- - PR -
ImageUrlEditorで例外
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-05-17 15:01
お世話になっております。
VS2003 VB.NETで開発しております。 カスタムコントロールを開発しているのですが ImageUrlEditorAttributeを付加したプロパティをフォームデザイナ上のPropertyGridから 編集しようとして...ボタンをクリックすると 「オブジェクト参照がオブジェクトインスタンスに設定されていません。」 という例外が発生してしまします。 このプロパティは <TypeConverter(GetType(ExpandableObjectConverter))> を付加したクラスのプロパティで、入れ子になっています。 また、カスタムコントロールのプロパティとして入れ子にしないとうまくいきます。。。 お世話になっております。 VS2003 VB.NETで開発しております。 カスタムコントロールを開発しているのですが ImageUrlEditorAttributeを付加したプロパティをフォームデザイナ上のPropertyGridから 編集しようとして...ボタンをクリックすると 「オブジェクト参照がオブジェクトインスタンスに設定されていません。」 という例外が発生してしまします。 このプロパティは <TypeConverter(GetType(ExpandableObjectConverter))> を付加したクラスのプロパティで、入れ子になっています。 また、カスタムコントロールのプロパティとして入れ子にしないとうまくいきます。。。 Public Class CustomDataGrid Inherits System.Web.UI.WebControls.Literal Private _openedImageUrl As String = "" Private _pagerStyle As PagerStyle = New PagerStyle <Browsable(True), _ Category("アイコン"), _ Editor(GetType(System.Web.UI.Design.ImageUrlEditor), GetType(System.Drawing.Design.UITypeEditor))> _ Public Property OpenedImageUrl() As String Get Return Me._openedImageUrl End Get Set(ByVal Value As String) Me._openedImageUrl = Value End Set End Property <Browsable(True), _ Category("スタイル"), _ DesignerSerializationVisibility(DesignerSerializationVisibility.Content)> _ Public Property [PagerStyle]() As PagerStyle Get Return Me._pagerStyle End Get Set(ByVal Value As PagerStyle) Me._pagerStyle = Value End Set End Property End Class Public Class PagerStyle Private _buttonImageUrl As String = "" <Browsable(True), _ NotifyParentPropertyAttribute(True), _ Editor(GetType(System.Web.UI.Design.ImageUrlEditor), GetType(System.Drawing.Design.UITypeEditor))> _ Public Property ButtonImageUrl() As String Get Return Me._buttonImageUrl End Get Set(ByVal Value As String) Me._buttonImageUrl = Value End Set End Property End Class このソースでCustomDataGrid.PagerStyle.ButtonImageUrlを デザイナから編集しようとすると、例外が発生してしまいます。 入れ子になったプロパティではEditorは使用できないのでしょうか? ご存知の方、いらっしゃいましたらご教授お願いします。 | ||||
|
投稿日時: 2004-05-17 15:56
burton999さん、こんにちは。
私の場合、ImageUrlEditor を継承するカスタムのイメージURLエディタを作成し、EditValue メソッドをオーバーライドすることで対処しました。 | ||||
|
投稿日時: 2004-05-17 17:20
きくちゃん様、レスありがとうございます。
ImageUrlEditorを継承してEditValueをオーバーライドして対処したとのことですが ネットに情報が少なくて苦戦しております。 いまだ、例外が発生する原因もわからずじまいです。。。 なにか参考になるサイトなどはありますでしょうか? よろしくお願いいたします。 | ||||
|
投稿日時: 2004-05-17 19:45
burton999さん、こんばんは。
ごめんなさい、原因等、この障害に関する情報は私も見つけていません。 ちなみに、オーバーライドした EditValue メソッドの中では、System.Web.UI.Design.UrlBuilder クラスの BuildUrl メソッドを呼び出しています。 | ||||
|
投稿日時: 2004-05-18 10:10
PagerStyleに親のCustomDataGridの参照を持たせて
このサイトを参考にしてImageUrlEditorを派生したら実現はできました。 http://www.artima.com/forums/flat.jsp?forum=152&thread=38250 しかし、まだ不明な点も多く、全てを理解できてない状態です。。。 とりあえず、かたづけなくてはいけない仕事が山積みなので 落ち着いたら再度、調査してみようと思います。 きくちゃん様、ご教授ありがとうございましたm(__)m |
1