![](/img/trans.png)
[英]C# DataGridView.DataSource difference between using BindingSource and not
[英]c# DataGridView.DataSource = BindingList Doesn't Work
我創建了一個綁定列表BindingList<RunData>
,並將其通過CustomMessageBox.Show()
傳遞,但是DataGridView
不顯示列表元素。
public partial class CustomMessageBox : Form
{
#region Fields.
private static CustomMessageBox customMessageBox;
private static String selectedDateTime;
#endregion
#region Properties.
internal String SelectedDateTime
{ get { return CustomMessageBox.selectedDateTime; } }
#endregion
#region Constructors.
private CustomMessageBox()
{
InitializeComponent();
}
#endregion
#region Methods.
internal static DialogResult Show(BindingList<RunData> dataGridViewData)
{
CustomMessageBox.customMessageBox = new CustomMessageBox();
CustomMessageBox.customMessageBox.dataGridViewRunData.AutoGenerateColumns = true;
CustomMessageBox.customMessageBox.dataGridViewRunData.DataSource = dataGridViewData;
return CustomMessageBox.customMessageBox.ShowDialog();
}
#endregion
}
internal class RunData
{
#region Fields.
private String dateTime;
private String name;
private String product;
private String result;
#endregion
#region Properties.
internal String DateTime
{ get { return this.dateTime; } }
internal String Name
{ get { return this.name; } }
internal String Product
{ get { return this.product; } }
internal String Result
{ get { return this.result; } }
#endregion
#region Constructors.
internal RunData(String dateTime, String name, String product, String result)
{
this.dateTime = dateTime;
this.name = name;
this.product = product;
this.result = result;
}
#endregion
}
我以前從未使用過BindingList
,但是從網上找到的示例中,我似乎一切正常。 任何幫助,將不勝感激。
謝謝!
編輯
我正在使用.NET 2.0(如果有任何區別)。
在測試中,我發現模型類(即RunData)和/或屬性應該是Public而不是內部的。
我創建了一個示例類,並對網格進行了相同的設置。 它因內部屬性和類而失敗。 一旦我公開,那就很好了。
public class RunData
{
#region Fields.
private String dateTime;
private String name;
private String product;
private String result;
#endregion
#region Properties.
public String DateTime
{ get { return this.dateTime; } }
public String Name
{ get { return this.name; } }
public String Product
{ get { return this.product; } }
public String Result
{ get { return this.result; } }
#endregion
#region Constructors.
public RunData(String dateTime, String name, String product, String result)
{
this.dateTime = dateTime;
this.name = name;
this.product = product;
this.result = result;
}
#endregion
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.