Tag: 数据源

DataSource更改时,ComboBox不会自动更新?

出于某种原因,当从DataSource(一个简单的BindingList)添加或删除项目时,ComboBox会相应地更新,但如果我编辑这样的项目,它就不会自动更新: myBindingList[index].Name = “NewName”; myBindingList[index].Value = newValue; 为了在编辑项目时更新它而不是创建或删除项目,我必须在更改后执行此操作: myComboBox.DataSource = null; myComboBox.DataSource = myBindingList; 这解决了问题,但它似乎是一个相当混乱的解决方案。 对于大型列表,它可能会变慢(我知道过早的优化),但仍然有办法强制ComboBox更新而不完全重新分配其DataSource? 谢谢阅读。

使用搜索文本框中的值过滤数据网格视图列表:’对象引用未设置为对象的实例。

我已经设置了一个文本框来搜索我的数据网格上的名称,但是我收到错误: ‘Object reference not set to an instance of an object.’ List members = new List(); public class Member { public int id { get; set; } public string name { get; set; } public int age { get; set; } public Image image_url { get; set; } } // In a keyup event of […]

ComboBox不加载用户

private void LoadUsersToComboBox() { comboBox1.DataSource = null; comboBox1.DataSource = peopleRepo.FindAllPeople(); /*Returns IQueryable*/ comboBox1.DisplayMember = “Name”; comboBox1.ValueMember = “ID”; } private void button2_Click(object sender, EventArgs e) { CreateNewPerson(); LoadUsersToComboBox(); } private void CreateNewPerson() { if (textBox2.Text != String.Empty) { Person user = new Person() { Name = textBox2.Text }; peopleRepo.Add(user); peopleRepo.Save(); } } 我希望combobox在每次保存后显示用户列表。 因此,有人创建了一个新用户,它应该在此之后显示在combobox中。 这不起作用,没有添加新用户,只有初始“加载”似乎有效。

使用数据源和entity framework填充以编程方式声明的datagridview

只是与c#winforms datagridview有一些小问题。 这是我的情景 我正在使用entity framework,并试图将某些实体模型绑定到我的datagridview数据源。 var query = from q in context.foo select q; dgv_Disp.DataSource = query.ToList(); 当我在一个在GUI中具有datagridview的表单类上运行上面这段代码时,一切正常。 datagridview将自动生成列和行数。 但是当我运行这个完全相同的代码,除了我在GUI中没有datagridview,我只是以编程方式声明它,然后像上面的代码一样设置数据源。 当我这样做时,不会生成任何行或列。 这两个不同的datagridviews有什么区别? 我知道在表单类的designer.cs文件中设置了属性。 但我尝试复制这些设置,但仍然不会填充。 我知道这可能很简单,但我根本无法解决这个问题。 如果有人能告诉我我做错了什么,那就太好了! 编辑 我使用过AutoGenerateColumns = true但它没有任何区别。 另外,我实际上并没有尝试显示这个datagridview,我只是将它绑定到实体对象,这样我可以使用字符串索引访问其成员。 但我不想查询数据库只是为了获取datagridview特定格式的信息,因为在我的实际场景中,我已经拥有了来自先前查询的实体数据。 我只是使用上面的代码作为例子。

MS Charts C#DataSource from array or List

我想从二维数组中的值填充图表的数据,一列将呈现X轴,第二列呈现Y轴..我做了它,但它不是从数组读取,它给出我运行应用程序时的默认行,我发现使用List 的解决方案,我有一个错误,所以如果任何人可以帮助我,我会感激:D 这是代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace ICS381Project { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { int[,] AndFunction = { { 0, 0, 0 }, { 0, 1, 0 }, […]

在WinForms中切换ReportViewer中的DataSources

我为用户创建了一个winform,以查看我为他们创建的许多报告。 我有一个带有报告名称的下拉列表,该列表触发相应的字段以显示参数。 一旦填写完毕,他们按提交并显示报告。 这在他们第一次点击屏幕时起作用。 他们可以更改参数,ReportViewer可以正常工作。 更改为其他报告,我收到以下ReportViewer错误: An error occurred during local report processing. An error has occurred during the report processing. A data source instance has not been supplied for the data source “CgTempData_BusMaintenance”. 就我使用的过程而言: 我将reportName (string)设置为物理RDLC名称。 我将dataSource (string)设置为DataSource Name 我用一个通用的DataTable填充要运行的报告的数据。 使ReportViewer可见 设置LocalReport.ReportPath = “Reports\\” = reportName; 清除LocalReport.DataSources.Clear() 添加新的LocalReport.DataSources.Add(new ReportDataSource(dataSource, dt)); ReportViewer上的RefreshReport() 。 以下是设置并显示ReportViewer的代码部分: /// […]

将列表绑定到DataSource

我希望能够将列表绑定到列表框数据源,并且在修改列表时,列表框的UI会自动更新。 (Winforms不是ASP)。 这是一个示例: private List fooList = new List(); private void Form1_Load(object sender, EventArgs e) { //Add first Foo in fooList Foo foo1 = new Foo(“bar1”); fooList.Add(foo1); //Bind fooList to the listBox listBox1.DataSource = fooList; //I can see bar1 in the listbox as expected } private void button1_Click(object sender, EventArgs e) { //Add anthoter Foo […]

设置DataGridView.DataSource后获取空行

有人可以告诉我为什么在运行此代码后我得到空行? … dataGridView.AutoGenerateColumns = false; //must be false, else getting additional columns from SQL dataGridView.DataSource = dataSet.Tables[0].DefaultView; 也试过了 dataGridView.Update(); 但没有工作。 行数没问题,但为什么我会得到空行? 我正在使用Winforms。

c#使用datasource 隐藏datagridview中的属性

我认为必须有一个属性来隐藏datagridview中的公共属性。 但我找不到它。

一个DataSource用于多个控件

我在winforms应用程序中有两个ListBox ,我为它们分配了一个数据源,如下所示: private void MakeMeasurementUnits() { var units = new List { new MeasurementUnit {Name = “Current”, SiUnit = “A”}, new MeasurementUnit {Name = “Voltage”, SiUnit = “V”}, new MeasurementUnit {Name = “Time”, SiUnit = “s”}, new MeasurementUnit {Name = “Temprature”, SiUnit = “°C”} }; lbxXunit.DataSource = units; lbxYunit.DataSource = units; } 奇怪的是(或者可能是因为这是我的第一次!!),在我点击其中一个lisboxes的项目的forms,第二个列表框中的相同项目也被选中。 这是默认行为吗? 怎么预防这个? […]