【C#】Listを使った自作プロパティを作りたい
コンポーネントにListを使った自作プロパティを作ろうと
思ってます。
試しに作ってみて、フォームに貼り付けるところまではいいんですが、
その後に一度でもビルドをするとエラーになってしまって、
うまく動作させることができません。
エラーはエラーメッセージが出力されるのではなく、
フォームデザイナー上でおかしなHTMLが出力されるものです。
どうしたらうまくいくのでしょうか?
【ソース】
public partial class Component1 : TextBox
{
public Component1()
{
InitializeComponent();
}
public Component1(IContainer container)
{
container.Add(this);
InitializeComponent();
}
private List<TestData> _test = new List<TestData>();
[Browsable(true)]
public List<TestData> Test
{
get { return _test; }
set { _test = value; }
}
}
[Serializable]
public class TestData
{
private string extensions = "*.*";
public string Extensions
{
get { return extensions; }
set { extensions = value; }
}
private string displayText = "すべてのファイル";
public string DisplayText
{
get { return displayText; }
set { displayText = value; }
}
public override string ToString()
{
return DisplayText;
}
}
【エラー内容】
<html><head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"><title></title><style>.ErrorStyle { font-family: tahoma; font-size: 11 pt; text-align: left}.DetailsStyle { font-family: tahoma; font-size: 10pt; text-align: left;text-indent: 0; word-spacing: 0; line-height: 100%; float: left; margin-top: 0; margin-bottom: 0}.StackStyleVisible { font-family: tahoma; font-size: 10pt; text-align: left; margin-left: 20; text-indent: 0}.StackStyleHidden { display:none; font-family: tahoma; font-size: 10pt; text-align: left; margin-left: 20; text-indent: 0}</style></head><body><DIV class="DetailsStyle" width="100%"><table border="0" width="100%" id="table1" height="100%" cellspacing="0" cellpadding="0"><tr><td height="40" bgcolor="#FF9999" width="8%" style="letter-spacing: 0" align="center"><img border="0" src="C:\Documents and Settings\yamaguti\Local Settings\Temp\27043E.tmp" width="35" height="35" alt="ErrorImage" ></td><td height="40" bgcolor="#FF9999" width="91%" style="vertical-align: top; letter-spacing: 0" align="left"><b><font size="2" face="Arial" fontsize="70%">繝・じ繧、繝翫・隱ュ縺ソ霎シ縺ソ譎ゅ↓ 1 縺、莉・荳翫・繧ィ繝ゥ繝シ縺檎匱逕溘@縺セ縺励◆縲ゅお繝ゥ繝シ縺ッ莉・荳九↓荳隕ァ陦ィ遉コ縺輔l縺セ縺吶ゅさ繝シ繝峨・螟画峩縺悟ソ・ヲ√↑繧ィ繝ゥ繝シ繧ゅ≠繧翫∪縺吶′縲√・繝ュ繧ク繧ァ繧ッ繝医r蜀榊コヲ繝薙Ν繝峨☆繧九→隗」豎コ縺ァ縺阪k繧ィ繝ゥ繝シ繧ゅ≠繧翫∪縺吶�</font><font size="2" face="Arial"></font></b></td></tr><tr><td colspan="2" align="left" valign="top"><DIV id="div1" class="ErrorStyle" width="100%"><span style="font-weight: 600"><br>蝙� 'WindowsApplication1.TestData[]' 縺ョ繧ェ繝悶ず繧ァ繧ッ繝医r蝙� 'WindowsApplication1.TestData[]' 縺ォ螟画鋤縺ァ縺阪∪縺帙s縲� </span><br><a href="" id="details0">髱櫁。ィ遉コ</a><font color="#0000FF">  </font></DIV> </td> </tr> <tr><td colspan="2" align="left" valign="top"><DIV id="div20" class="StackStyleVisible" width="100%"><br> 蝣エ謇 System.RuntimeType.CheckValue(Object value, Binder binder, CultureInfo culture, BindingFlags invokeAttr)<br> 蝣エ謇 System.Reflection.RtFieldInfo.InternalSetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture, Boolean doVisibilityCheck, Boolean doCheckConsistency)<br> 蝣エ謇 System.Reflection.RtFieldInfo.InternalSetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture, Boolean doVisibilityCheck)<br> 蝣エ謇 System.Runtime.Serialization.FormatterServices.SerializationSetValue(MemberInfo fi, Object target, Object value)<br> 蝣エ謇 System.Runtime.Serialization.ObjectManager.CompleteObject(ObjectHolder holder, Boolean bObjectFullyComplete)<br> 蝣エ謇 System.Runtime.Serialization.ObjectManager.DoNewlyRegisteredObjectFixups(ObjectHolder holder)<br> 蝣エ謇 System.Runtime.Serialization.ObjectManager.RegisterObject(Object obj, Int64 objectID, SerializationInfo info, Int64 idOfContainingObj, MemberInfo member, Int32[] arrayIndex)<br> 蝣エ謇 System.Runtime.Serialization.Formatters.Binary.ObjectReader.RegisterObject(Object obj, ParseRecord pr, ParseRecord objectPr, Boolean bIsString)<br> 蝣エ謇 System.Runtime.Serialization.Formatters.Binary.ObjectReader.ParseObjectEnd(ParseRecord pr)<br> 蝣エ謇 System.Runtime.Ser
お礼
回答ありがとうございます。 やはり、デザインビューが表示できず、VisualStudioを再インストールしました。 無事元に戻りました。