Tag: datagridview

一列的DataGridview单元格不能有不同的类型

好吧,我有一个datagridview,我有一个列,我想要做的就是控制这个列中的单元格,有时使它成为combobox,有时候是textBox ….等等 我可以让列的单元格只有一种类型,我可以在一列中输入多个单元格吗? 希望很清楚。

DataGridView行添加了事件

我正在使用DataGridView,我将List绑定到DataSource。 我已经有了正确的列,我准确地映射了字段。 我正在尝试做的是处理一种RowAdded或RowDataBound (就像在aspx GridView中)事件。 我发现的唯一事件是RowsAdded但无论我拥有多少项,它在我第一次绑定时仅被激发4次,而在其他时间激发两次,具有值 e.RowCount:1 e.RowIndex:0 e.RowCount:[n-1] e.RowIndex:1 *其中n是我的物品数量 有没有办法可以找到每个项目的句柄? 编辑:不更改DataSource =绑定方法

如何在DataGridView中获取当前单元格位置x和y?

我有一个Windows表单,其中隐藏着日历。 我想在DataGridView的当前单元格下面显示表单。 位置根据当前单元格的位置而变化。 我不想要当前的单元格或当前列,我想要的位置,以便我可以设置我的日期表单的位置。 这是我正在使用但它不起作用: int po_X = paygrid.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Left+paygrid.Left; int po_Y = paygrid.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Bottom+paygrid.Top; form_date.Location = new System.Drawing.Point(po_X, po_Y);

如何让DataGridViewcombobox一键显示下拉列表?

在我将“EditOnEnter”设置为true后,如果我没有单击combobox的向下箭头部分, DataGridViewComboBoxCell仍然会打开两次。 任何人都有任何线索如何解决这个问题? 我有自己的DataGridView类,所以我可以通过一些智能事件处理程序在系统范围内轻松解决这个问题。 谢谢。

如何按列名设置DataGridViewRow的Cell值?

在Windows窗体中,我试图通过插入DataGridViewRows手动填充DataGridView ,所以我的代码如下所示: DataGridViewRow row = new DataGridViewRow(); row.CreateCells(dgvArticles); row.Cells[0].Value = product.Id; row.Cells[1].Value = product.Description; . . . dgvArticles.Rows.Add(row); 但是,我想按列名添加Cell值,而不是通过索引来添加它,如下所示: row.Cells[“code”].Value = product.Id; row.Cells[“description”].Value = product.Description; 但这样做会抛出一个错误,说它无法找到名为“code”的列。 我正在设计设计器中的DataGridView列,如下所示: 难道我做错了什么? 我怎样才能完成我想做的事情?

datagridview中的垂直文本

我想以垂直方向显示标题单元格中的文本。 我该怎么做? 谢谢

DataBridView中的外键combobox

我有一个包含两个表,产品和许可证的数据库。 Licences.ProductID具有对Products.ProductID的外键引用(即该产品的许可证)。 如何在WinForms DataGridView中表示该关系? 在向DataGridView(SQL Metal和通过LINQ to SQL)提供ProductLicences.ProductID时,它会自动生成一个包含文本字段的列,该字段需要“Product”(当然我无法输入…)。 如何更改此列以包含列出可用产品的combobox? 我有一个连接(inheritance自Linq.DataContext ),分配给DataGridView的数据源是一个Link.IQueryable ,生成如下: var ds = from c in m_connection.Licences select c;

以Windows窗体刷新DataGridView

我有两个表单,它是表单A和表单B.当我单击表单BI上的保存按钮时,需要刷新表单A的DataGridView。 我应该使用哪种方法?

如何将Object 绑定到datagridview?

我有二维数组与不同类型的数据(int,string,float)。 如何将其绑定到数据网格视图? 或者将其转换为数据View或BindingList或DataTable,然后将其绑定到datagridview? 编辑:对象[,]是完全动态的数据(不同的行,列,数据类型,类似转储数据):( Excel工作表) [0,x]“kjslwe”3“w”45“erer”643“reew”“54”56 34 [1,y] 23“e”1“sf”123213“ds”343433

自定义DataGridView列在Designer中使用时重复

我制作了一个自定义的DataGridView组件,里面有一个标准的DataGridViewImageColumn。 当我不需要在特定表中输入时,新属性会更改列的可见性。 我在构造函数中添加列并在CellFormatting事件上更新它。 这是一个像预期一样工作的部分。 当我将控件放到新表单上时,它会显示新列。 运行程序会在网格中生成两个图像列。 一个新表单刚刚添加了组件并设置了Dock.Fill 当我开始它而不改变任何东西时,它显示了两列。 第一个是它应该工作,第二个总是显示丢失的x图像(没有数据,因此它们显示x)。 在表单的设计者中,会自动添加一个ne image列。 private CustomDataGridView customDataGridView1; private System.Windows.Forms.DataGridViewImageColumn dataGridViewImageColumn1; 当我继续在表单中进行编辑时,有时会发生VS创建更多相同列的副本。 要解决这个问题,我必须时不时地清除DGV.Columns列表。 如何防止VS复制我的字段? 以下代码是重现问题的最小部分。 public class CustomDataGridView : DataGridView { private DataGridViewImageColumn EditStatusIcons; private bool hasIcons = true; public bool HasIcons { get { return this.hasIcons; } set { if (this.Columns[“EditIcons”] == null) return; this.Columns[“EditIcons”].Visible = value; this.hasIcons […]