私はこの解決策を読みました:リストボックスの項目テキストを更新するにはどうすればよいですか?
しかし、オブジェクトのプロパティが変更されたときに listBox に表示されるテキストを更新することができません。
public partial class Form1 : Form
{
public BindingList<Channel> chanList = new BindingList<Channel>();
private void Form1_Load(object sender, EventArgs e)
{
lbChannels.DisplayMember = "Display";
lbChannels.DataSource = chanList;
}
}
public class Channel
{
public string Display
{
get
{
return ToString();
}
}
public override string ToString()
{
if(!unread || DateTime.Now.Second % 2 == 0)
return Name;
return "";
}
}
ここでの目標は、listBox に未読のデータがある場合にチャンネル名を点滅させることですが、テストしても何も起こりません。また、lbChannels.Refresh() と lbChannels.Update() を呼び出してみました。
何かが欠けているに違いないのですが、何がわかりません。他のスレッドの解決策は単純すぎて真実ではないように思えますが、私はそれを何度か調べましたが、listBox に関連するものは他に見つかりません。ここで何が欠けていますか?