【问题标题】:how to set column in GridView to default value?如何将 GridView 中的列设置为默认值?
【发布时间】:2015-10-10 23:51:05
【问题描述】:

我在 GridView 中有一个名为 Qty Advised 的列,此列需要默认为 1。但每次 GridView 加载时,它都会在列中显示 0。我将数据库中的默认值设置为1,并在ItemDataBound函数中设置了SerNo.QtyAdvised = 1;,但它仍然显示为0。

有没有办法在这里设置默认值?

<asp:BoundField DataField="QtyAdvised" HeaderText="Qty Advised" ></asp:BoundField>

我不明白它是如何一直显示 0 GridView 是动态创建的。

【问题讨论】:

    标签: c# asp.net gridview default-value


    【解决方案1】:

    您可能需要使用DataColumn.DefaultValue 属性。

    它在创建新行时设置列的默认值。

    参考:DataColumn.DefaultValue Property

    或者在rowdatabound上,你可以设置列默认值

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        //Checking the RowType of the Row  
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
             e.Row.Cells[1].Text = "1"; // Use your column index here
        }  
    }
    

    【讨论】:

    • 很好的答案,但由于 MSDN 只提供了 VB 的示例,也许您可​​以提供 C# 的示例以更加清楚。
    • 我正在动态创建这个 GridView,所以我没有任何创建列代码
    • 如果会有很多默认值,你应该考虑创建一个默认配置类。至少在将来,如果您最终更改默认值及其其他地方,那么您只需在一个地方进行更改。
    【解决方案2】:

    它通过在数据库的代码中设置默认值来工作

    public int _QtyAdvised = 1;
    public int QtyAdvised
            {
                get { return _QtyAdvised; }
                set { _QtyAdvised = value; }
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多