我有一个方法可以将项目添加到我的列表框,称为 refreshInterface,它会在程序启动后立即调用,使用 FormItems 类在列表框中添加 homeforms 的名称,这是下面的 rereshInterface 方法
public void refreshInterface()
{
//int number = 0;
foreach (DataSet1.xspGetAnalysisUsageTypesRow homeForms in myDataSet.xspGetAnalysisUsageTypes)
{
var forms = new FormItems(homeForms);
listBox1.Items.Add(forms);
}
}
FormItems 类如下
public class FormItems
{
public DataSet1.xspGetAnalysisUsageTypesRow types { get; set; }
public FormItems(DataSet1.xspGetAnalysisUsageTypesRow usageTypes)
{
types = usageTypes;
}
public override string ToString()
{
// returns the rows that are relating to types.xlib_ID
var libtyps = types.GetxAnalysisUsageRows();
var cnt = 0;
foreach (DataSet1.xAnalysisUsageRow ty in libtyps)
{
//returns true if ty is null
bool typeNull = ty.Isxanu_DefaultNull();
// if its false, if xanu_Default is set
if (!typeNull)
{
cnt += 1;
}
}
var ret = String.Format("set {0} [Set: {1}]", types.xlib_Desc, cnt);
//return this.types.xlib_Desc;
return ret;
}
}
每个列表框(列表框位于主窗体的左侧)项都有许多可以添加到其中的报告,例如,我从列表框中选择一个主窗体,右侧有 12 个文本框,每个文本框有一对按钮是浏览和清除。如果我单击浏览按钮会出现一个新表单,然后从该表单中选择一个报告并将其添加到特定的文本框,则该主表单的计数应该会更新,并且我清除特定主表单的文本框,计数也应该更新。
在我调试应用程序的那一刻,它会根据添加到 homeform 的报告数量向我显示每个 Homeform 的计数,但是在程序运行时,如果我向 homeform 添加新报告,计数不会更新直到我重新启动调试会话。有人告诉我使用数据绑定方法,但不确定如何在这里使用它
我如何更新我的列表框项目?