DOBON.NET DOBON.NETプログラミング掲示板過去ログ

UserControl Imageプロパティについて

分類:[.NET]

みなさん、こんにちは、

 VB.NET(2002 SP2) FrameWork1.0 で、ユーザーコントロールを作成しています。

PictureBox を配置し、イメージを表示するという目的は達成できたのですが、
Image の削除ができません。
 通常のPictureBoxではプロパティページのImage 欄でDeleteキーを押すと
"なし"にできるのですが、作成した物ではDeleteキーに反応しません。
VB6とは違い、デザインモード時のデバッグができないので、困っています。

 <editor()> 属性で、自分でエディタをカスタマイズしなくてはいけないのでしょうか?
イメージの選択はダイアログボックスが自動的に表示されてできるのですが...

どなたか、アドバイス、よろしくお願いいたします。


Imports System.Windows.Forms
Imports System.Drawing
Imports Microsoft.VisualBasic
Imports System.ComponentModel  ' <Description() 等の属性を記述するのに必要

<Serializable> _
Public Class MyControl
  Inherits System.Windows.Forms.UserControl

  Private m_Image As Image = Nothing

  <Browsable(True)> _
  Public Property Image() As Image

    Get
      Return m_Image
    End Get

    Set(ByVal Value As Image)

      m_Image = Value
      pic.Image = Value

    End Set

  End Property
End Class

※Tabを全角ブランクにしてあります。
こんにちは、うにさん。ピラルクです。

<DefaultValue(GetType(Image), "None")> _
Public Property Image() As Image

とすればOKなようです。

調べていてココでGetしました。
(また英語サイトですいません。(^^; 私も英語いやなんですけど)

▼Paul Kimmel on VB/VB.NET - Using the DefaultValueAttribute
http://www.codeguru.com/columns/VB/PK031502.html
ピラルクさん、ありがとうございます。
いつも助けていただき、本当に感謝しております。

> <DefaultValue(GetType(Image), "None")> _
> Public Property Image() As Image
>
> とすればOKなようです。

おおっ!Deleteキーで削除できるではありませんか!!
Nothing でなくて、None なんですね。(シャレではないです)

英語でもバリバリ調べてしまうなんて、すごいですね。
検索リストを見ただけでガックシな俺って...ダメだなあ。

本当にありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板