กดปุ่ม Add Rowใหม่ในGridView แล้วข้อมูลที่กรอกไว้มันหาย ต้องแก้ยังไงครับ
คุณก็จะต้องอ่านมันมาจาก Session แล้วก็ลง Session ใหม่อีกน่ะครับ เพราะตอนที่ Page_Load ใหม่ มันก็
Dim dt As New DataTable
Dim dr As DataRow
ทุกครั้ง ค่าเก่าๆ ก็หายหมดน่ะครับ
ประวัติการแก้ไข 2010-08-19 06:23:26
Date :
2010-08-19 06:21:45
By :
webmaster
รบกวนมี code ตัวอย่างให้ดูมั้ยครับ
Date :
2010-08-19 08:08:55
By :
X2
สร้าง GridView มาโดยดึงข้อมูลจาก database มาแสดงค่ะ จากนั้นก็เพิ่มคอลัมภ์ 3 คอลัมภ์เป็น ImageButton ค่ะ เพื่อให้ ทั้ง 3 link ไปคนละ page กันอ่ะค่ะ โดยการส่งค่า Officer_Id ไปด้วย แต่เจอปัญหานี้ค่ะ
GridView ค่ะ
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="Officer_id" DataSourceID="SqlDataSource1" CellPadding="4"
ForeColor="#333333" GridLines="None"
AllowPaging="True">
<RowStyle BackColor="#EFF3FB" />
<Columns>
<asp:BoundField DataField="Officer_id" HeaderText="Officer_id" ReadOnly="True"
SortExpression="Officer_id" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Departent" HeaderText="Departent"
SortExpression="Departent" />
<asp:BoundField DataField="Level" HeaderText="Level" SortExpression="Level" />
<asp:TemplateField HeaderText="Detail" ShowHeader="False">
<ItemTemplate>
<asp:ImageButton ID="ImageButton1" runat="server" CausesValidation="false"
CommandName="" ImageUrl="~/images/detail.png" onclick="ImageButton1_Click"
Text="Button" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Edit" ShowHeader="False">
<ItemTemplate>
<asp:ImageButton ID="ImageButton2" runat="server" CausesValidation="false"
CommandName="" ImageUrl="~/images/edit.png" onclick="ImageButton2_Click"
Text="Button" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Delete" ShowHeader="False">
<ItemTemplate>
<asp:ImageButton ID="ImageButton3" runat="server" CausesValidation="false"
CommandName="" ImageUrl="~/images/delete.png" onclick="ImageButton3_Click"
Text="Button" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#2461BF" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>
session ที่จะส่งค่ะ
protected void ImageButton1_Click(object sender, ImageClickEventArgs e )
{
Session["officerId"] = GridView1.SelectedDataKey["Officer_id"].ToString();
Response.Redirect("OfficerDetail.aspx");
}
แล้วมันเกิด error ที่ Session["officerId"] = GridView1.SelectedDataKey["Officer_id"].ToString(); ค่ะ
รบกวนด้วยน่ะค่ะ
Date :
2011-01-28 14:54:49
By :
nnn
Load balance : Server 02