WebDataGrid では、バインドされているデータソースに対して行を追加することで、WebDataGrid に行を追加します。

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<ig:WebDataGrid
    ID="WebDataGrid1" runat="server"
    Height="350px" Width="400px"
    AutoGenerateColumns="False"
    >
    <Columns>
        <ig:BoundDataField DataFieldName="ID" Key="ID">
            <Header Text="ID">
            </Header>
        </ig:BoundDataField>
        <ig:BoundDataField DataFieldName="Name" Key="Name">
            <Header Text="名前">
            </Header>
        </ig:BoundDataField>
        <ig:BoundDataField DataFieldName="Age" Key="Age">
            <Header Text="年齢">
            </Header>
        </ig:BoundDataField>
    </Columns>
</ig:WebDataGrid>
protected void Page_Load(object sender, EventArgs e)
{
    if(Session["data"] == null)
    {
        Session["data"] = getData();
    }
    // WebDataGrid に、Session 内にある DataTable をバインド
    this.WebDataGrid1.DataSource = Session["data"];
}

private DataTable getData()
{
    // データテーブルをリターン
    // 実装は省略(実装の詳細は添付サンプルを参照)
    return dt;
}

protected void Button1_Click(object sender, EventArgs e)
{
    // WebDataGrid にバインドしているデータソースを取得
    DataTable table = Session["data"] as DataTable;

    // バインドしているデータソースにレコードを追加
    DataRowView newRow = table.DefaultView.AddNew();
    newRow["ID"] = table.Rows.Count + 1;
    newRow["Name"] = "たけし";
    newRow["Age"] = 41;
}
Tagged: