推荐于2018-04-11
展开全部
基本数据绑定
熟悉 DATAGRIDVIEW 的最佳方法就是实际尝试一下,无需配置任何属性。就像 DATAGRID 一样,您可以使用 DATASOURCE 属性来绑定 DATATABLE 对象(或从 DATATABLE 派生的对象)。
DIM DS AS DATASET = GETDATASET()DATAGRIDVIEW1.DATASOURCE = DS.TABLES("CUSTOMERS")
与 DATAGRID 不同的是,DATAGRIDVIEW 一次只能显示一个表。绑定整个 DATASET,则不会显示任何数据,除非您使用要显示的表名设置了 DATAMEMBER 属性。
DATAGRIDVIEW1.DATASOURCE = DSDATAGRIDVIEW1.DATAMEMBER = "CUSTOMERS"
美化 DATAGRIDVIEW
DATAGRIDVIEW 的默认外观仅仅比 DATAGRID 略有改进,但是使用几项快速调整功能,您可以将其显著改进。
其中的一个问题就是列无法自动展开以适合其包含的数据。您可以使用 DATAGRIDVIEW.AUTOSIZECOLUMNS() 方法以及 DATAGRIDVIEWAUTOSIZECOLUMNCRITERIA 枚举中的某个值来解决此问题。您可以选择根据标题文本、当前显示的行或表中的所有行的的宽度来调整列宽。
' 根据标题或此列的某一行中' 最长一段文本的宽度调整' 列宽。DATAGRIDVIEW1.AUTOSIZECOLUMNS( _DATAGRIDVIEWAUTOSIZECOLUMNCRITERIA.HEADERANDROWS)
请记住,此方法必须在绑定数据后调用,否则不会产生任何效果。你可能还需要在用户编辑数据后使用它(可能在响应 DATAGRIDVIEW.CELLVALUECHANGED 等事件时)。
不增加列宽,则可以更改行高。默认情况下,列中的文本会跨越多行。您使用 DATAGRIDVIEW.AUTOSIZEROWS() 方法,则行会根据其中的内容调整高度。使用此方法前,您可能希望增加列宽,尤其是在字段包含大量文本时。例如,以下代码片段使“说明”列的列宽增加为原列宽的四倍,调整行高以容纳其内容。
DATAGRIDVIEW.COLUMNS("DESCRIPTION").WIDTH *= 4DATAGRIDVIEW.AUTOSIZEROWS( _DATAGRIDVIEWAUTOSIZEROWSMODE.HEADERANDCOLUMNSALLROWS)
比较了自动调整 DATAGRIDVIEW 大小的各种方法。
另一个合理的更改是清理每一列中显示的标题文本。例如,标题“ORDER DATE”比字段名称“ORDERDATE”看上去更为专业。这项更改很容易进行。您只需从 DATAGRIDVIEW.COLUMNS 集合中检索相应的 DATAGRIDVIEWCOLUMN,并修改其 HEADERTEXT 属性:
DATAGRIDVIEW.COLUMNS("ORDERID").HEADERTEXT = "ORDER ID"
使用 DATAGRIDVIEW 选择单元格
默认情况下,DATAGRIDVIEW 允许自由选择。用户可以突出显示单元格或单元格组,可以一次突出显示所有单元格(通过单击网格右上角的方块),还可以突出显示一行或多行(通过在行标题列中单击)。根据选择模式,用户甚至能够通过选择列标题来选择一列或多列。通过使用 DATAGRIDVIEWSELECTIONMODE 枚举中的某个值来设置 DATAGRIDVIEW.SELECTIONMODE 属性,可以控制此行为,如下所述:
通过 DATAGRIDVIEW,可以使用以下三个属性方便地检索选定的单元格:SELECTEDCELLS、SELECTEDROWS 和 SELECTEDCOLUMNS。无论使用的是哪种选择模式,SELECTEDCELLS 都始终返回 DATAGRIDVIEWCELL 对象的集合。另一方面,使用行标题选择了整个行,则 SELECTEDROWS 只返回信息,而使用列标题选择了整个列,则 SELECTEDCOLUMNS 也只返回信息。
熟悉 DATAGRIDVIEW 的最佳方法就是实际尝试一下,无需配置任何属性。就像 DATAGRID 一样,您可以使用 DATASOURCE 属性来绑定 DATATABLE 对象(或从 DATATABLE 派生的对象)。
DIM DS AS DATASET = GETDATASET()DATAGRIDVIEW1.DATASOURCE = DS.TABLES("CUSTOMERS")
与 DATAGRID 不同的是,DATAGRIDVIEW 一次只能显示一个表。绑定整个 DATASET,则不会显示任何数据,除非您使用要显示的表名设置了 DATAMEMBER 属性。
DATAGRIDVIEW1.DATASOURCE = DSDATAGRIDVIEW1.DATAMEMBER = "CUSTOMERS"
美化 DATAGRIDVIEW
DATAGRIDVIEW 的默认外观仅仅比 DATAGRID 略有改进,但是使用几项快速调整功能,您可以将其显著改进。
其中的一个问题就是列无法自动展开以适合其包含的数据。您可以使用 DATAGRIDVIEW.AUTOSIZECOLUMNS() 方法以及 DATAGRIDVIEWAUTOSIZECOLUMNCRITERIA 枚举中的某个值来解决此问题。您可以选择根据标题文本、当前显示的行或表中的所有行的的宽度来调整列宽。
' 根据标题或此列的某一行中' 最长一段文本的宽度调整' 列宽。DATAGRIDVIEW1.AUTOSIZECOLUMNS( _DATAGRIDVIEWAUTOSIZECOLUMNCRITERIA.HEADERANDROWS)
请记住,此方法必须在绑定数据后调用,否则不会产生任何效果。你可能还需要在用户编辑数据后使用它(可能在响应 DATAGRIDVIEW.CELLVALUECHANGED 等事件时)。
不增加列宽,则可以更改行高。默认情况下,列中的文本会跨越多行。您使用 DATAGRIDVIEW.AUTOSIZEROWS() 方法,则行会根据其中的内容调整高度。使用此方法前,您可能希望增加列宽,尤其是在字段包含大量文本时。例如,以下代码片段使“说明”列的列宽增加为原列宽的四倍,调整行高以容纳其内容。
DATAGRIDVIEW.COLUMNS("DESCRIPTION").WIDTH *= 4DATAGRIDVIEW.AUTOSIZEROWS( _DATAGRIDVIEWAUTOSIZEROWSMODE.HEADERANDCOLUMNSALLROWS)
比较了自动调整 DATAGRIDVIEW 大小的各种方法。
另一个合理的更改是清理每一列中显示的标题文本。例如,标题“ORDER DATE”比字段名称“ORDERDATE”看上去更为专业。这项更改很容易进行。您只需从 DATAGRIDVIEW.COLUMNS 集合中检索相应的 DATAGRIDVIEWCOLUMN,并修改其 HEADERTEXT 属性:
DATAGRIDVIEW.COLUMNS("ORDERID").HEADERTEXT = "ORDER ID"
使用 DATAGRIDVIEW 选择单元格
默认情况下,DATAGRIDVIEW 允许自由选择。用户可以突出显示单元格或单元格组,可以一次突出显示所有单元格(通过单击网格右上角的方块),还可以突出显示一行或多行(通过在行标题列中单击)。根据选择模式,用户甚至能够通过选择列标题来选择一列或多列。通过使用 DATAGRIDVIEWSELECTIONMODE 枚举中的某个值来设置 DATAGRIDVIEW.SELECTIONMODE 属性,可以控制此行为,如下所述:
通过 DATAGRIDVIEW,可以使用以下三个属性方便地检索选定的单元格:SELECTEDCELLS、SELECTEDROWS 和 SELECTEDCOLUMNS。无论使用的是哪种选择模式,SELECTEDCELLS 都始终返回 DATAGRIDVIEWCELL 对象的集合。另一方面,使用行标题选择了整个行,则 SELECTEDROWS 只返回信息,而使用列标题选择了整个列,则 SELECTEDCOLUMNS 也只返回信息。
2013-08-21
展开全部
你要把这行从数据库中删除还是从这个控件中删除?
用dataGrid1.CurrentRowIndex获取当前选中的行的索引,下面的操作你自己应该可以做了把。
用dataGrid1.CurrentRowIndex获取当前选中的行的索引,下面的操作你自己应该可以做了把。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-21
展开全部
先用SQL语句
string strSQL = "delete from 表名 where 列名=值";
DBHelper.connection.Open();
SqlCommand command = new SqlCommand(strSQL, DBHelper.connection);
int num=command.ExecuteNonQuery();
if (num > 0)
{
MessageBox.Show("删除成功!", "信息提示");
}
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
adapter.Update(ds.Tables[0]);
在这里也说不明白!我QQ153348664,或者你发你的邮箱来,我发给你!
string strSQL = "delete from 表名 where 列名=值";
DBHelper.connection.Open();
SqlCommand command = new SqlCommand(strSQL, DBHelper.connection);
int num=command.ExecuteNonQuery();
if (num > 0)
{
MessageBox.Show("删除成功!", "信息提示");
}
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
adapter.Update(ds.Tables[0]);
在这里也说不明白!我QQ153348664,或者你发你的邮箱来,我发给你!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-21
展开全部
在它的删除事件中写代码
只能说这么多了
只能说这么多了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询