我已经阅读了msdn(见下文)的定义,这对我没有帮助。我正在动态地将gridviewrows添加到我的gridview中,并且不知道它们的参数是什么。
public GridViewRow(
int rowIndex,
int dataItemIndex,
DataControlRowType rowType,
DataControlRowState rowState
)
rowIndex类型:System.Int32 GridViewRow对象的索引 GridView控件的行集合。
dataItemIndex类型:System.Int32 DataItem中的索引 基础DataSet。
rowType类型:System.Web.UI.WebControls.DataControlRowType其中一个 DataControlRowType枚举值。
rowState类型:System.Web.UI.WebControls.DataControlRowState按位 DataControlRowState枚举值的组合。
答案 0 :(得分:1)
for example to add into gridview you can use datatable...
public static DataTable TBCONRCVD;
FindRowNo = GoodsRcvdGridview.Items.Count;
DataRow ROW = TBCONRCVD.NewRow();
ROW["PRDCT_RCVD_PRDCT_CODE"] = TxtSearch.Text;
ROW["PRDCT_RCVD_QTY"] = txtQty.Text.Trim();
ROW["PRDCT_RCVD_COST"] = TXTUNITPRCE.Text.Trim();
ROW["PRDCT_CRNT_SLNG_PRCE"] = SELL_PRCE.ToString();
ROW["PRDCT_RCVD_VAT_CODE"] = TXTVATCODE.Text.Trim();
ROW["PRDCT_RCVD_DISC"] = txtDscntPrcntge.Text;
TBCONRCVD.Rows.Add(ROW);
GoodsRcvdGridview.DataSource = TBCONRCVD;
GoodsRcvdGridview.DataBind();
答案 1 :(得分:1)
这些参数(通常是这个构造函数)确实很少需要使用。它们用于创建GridView,它是完全手动的行 - 考虑到此控件内置的强大数据绑定功能,这是非常不必要的。让我解释一下。
通常,您应该构造一个数据源(DataTable,一些自定义类的通用列表等),然后将该数据源分配给GridView并绑定它。这样可以自动设置RowIndex和DataItemIndex。它还允许许多其他方便的功能(排序,分页,编辑/删除)。有关此默认功能的详细信息,请参阅GridView Web Server Control Overview 。
因此,我会说您应该将新行添加到数据源(无论可能是什么),然后将更新的数据源设置为GridView的DataSource属性,并调用GridView.DataBind()
。您将获得新行,而不必手动创建GridViewRow对象。
但是,要回答你的问题:
int rowIndex
:您正在创建的行的索引(位置)将占用GridView。int dataItemIndex
:基础数据源(DataTable或通用列表或您使用的任何内容)中此数据的索引。DataControlRowType rowType
:这是行的类型 - 包含数据,页眉,页脚等的行(full list here)。DataControlRowState rowState
:行处于“状态” - 编辑模式,只读模式等(full list here)。