インスタンスの扱い方
- 題名: インスタンスの扱い方
- 著者: みかん
- 日時: 2007/08/08 11:57:47
- ID: 20226
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: インスタンスの扱い方
- 著者: Ruku
- 日時: 2007/08/08 12:52:48
- ID: 20227
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: インスタンスの扱い方
- 著者: まどか
- 日時: 2007/08/08 13:12:58
- ID: 20228
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: インスタンスの扱い方
- 著者: みかん
- 日時: 2007/08/08 13:14:25
- ID: 20229
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: インスタンスの扱い方
- 著者: Ruku
- 日時: 2007/08/08 13:15:26
- ID: 20230
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: インスタンスの扱い方
- 著者: Ruku
- 日時: 2007/08/08 13:23:59
- ID: 20231
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: インスタンスの扱い方
- 著者: みかん
- 日時: 2007/08/08 14:06:00
- ID: 20233
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
お世話になってます。
テキストボックスを拡張するコンポーネントを作ってまして
フォームのロード時にフォームに貼ったコンポーネントのDataListに
それぞれ値を入れたのですけど全部最後にセットした値になってしまいます。
それぞれNewしているので大丈夫だと・・・
インスタンスの扱い方がおかしいと思いますがどうすればよいのでしょうか?
//----------------フォーム側
private void Form1_Load(object sender, EventArgs e)
{
Dictionary<string, string> dataList =
new Dictionary<string, string>();
dataList.Clear();
dataList.Add("1", "a");
dataList.Add("2", "b");
TextBoxEx.DataList = dataList;
dataList.Clear();
dataList.Add("1", "A");
dataList.Add("2", "B");
TextBoxEx.DataList = dataList;
}
//----------------コンポーネント側
namespace aaa
{
public partial class TextBoxEx : TextBox
{
private Dictionary<string, string> dataList =
new Dictionary<string, string>();
public Dictionary<string, string> DataList
{
set { dataList = value; }
get { return dataList; }
}
protected override void OnKeyDown(KeyEventArgs e)
{
//ここでどっちもA,Bが表示されます。
foreach (KeyValuePair<string, string> list in dataList)
{
Console.WriteLine("{0}:{1}", list.Key, list.Value);
}
base.OnKeyDown(e);
}
}
}