fereshte22
شنبه 15 اردیبهشت 1386, 10:58 صبح
سلام
توی روال update در gridview وقتی قراره فیلدی اپدیت بشود .اون فیلد در حالت textbox قرار میگیرد.حالا سوال من این است که ایا برای اپدیت کردن یک فیلد در دیتابیس باید همیشه فیلد به حالت textbox دربیاید.مثلا من چند فیلد شامل هزینه و بیمه وغیره و یک فیلد دیگر هم دارم که جمع این چند فیلد است.من میخواهم وقتی فیلد های مذکور اپدیت میشوند (در روال
RowUpdating گرید ویو)جمع انها نیز همان موقع اپدیت شودودر دیتابیس ذخیره شود.و نیازی به textbox برای این فیلد نداشته باشم.
برای اپدیت فیلدهای gridview من از کد زیر استفاده کردم
Sub AuthorsGridView_RowUpdating(ByVal sender As Object, ByVal e As GridViewUpdateEventArgs)
Dim index As Integer = AuthorsGridView.EditIndex
Dim row As GridViewRow = AuthorsGridView.Rows(index)
Dim price As TextBox = CType(row.FindControl("priceTextBox"), TextBox)
Dim bimeh As TextBox = CType(row.FindControl("bimehTextBox"), TextBox)
e.NewValues("price") = price.Text
e.NewValues("bimeh") = bimeh.Text
End Sub
برای ایجاد textbox ها نیز از کد زیر استفاده کردهام.
<asp:TemplateField HeaderText=" یêى کںéں">
<ItemTemplate>
<%#Eval("bimeh")%>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="bimehTextBox" runat="server" Text='<%#Eval("bimeh")%>' Width="90"></asp:TextBox>
<br />
</EditItemTemplate>
<ItemStyle VerticalAlign="Top" />
</asp:TemplateField>
توی روال update در gridview وقتی قراره فیلدی اپدیت بشود .اون فیلد در حالت textbox قرار میگیرد.حالا سوال من این است که ایا برای اپدیت کردن یک فیلد در دیتابیس باید همیشه فیلد به حالت textbox دربیاید.مثلا من چند فیلد شامل هزینه و بیمه وغیره و یک فیلد دیگر هم دارم که جمع این چند فیلد است.من میخواهم وقتی فیلد های مذکور اپدیت میشوند (در روال
RowUpdating گرید ویو)جمع انها نیز همان موقع اپدیت شودودر دیتابیس ذخیره شود.و نیازی به textbox برای این فیلد نداشته باشم.
برای اپدیت فیلدهای gridview من از کد زیر استفاده کردم
Sub AuthorsGridView_RowUpdating(ByVal sender As Object, ByVal e As GridViewUpdateEventArgs)
Dim index As Integer = AuthorsGridView.EditIndex
Dim row As GridViewRow = AuthorsGridView.Rows(index)
Dim price As TextBox = CType(row.FindControl("priceTextBox"), TextBox)
Dim bimeh As TextBox = CType(row.FindControl("bimehTextBox"), TextBox)
e.NewValues("price") = price.Text
e.NewValues("bimeh") = bimeh.Text
End Sub
برای ایجاد textbox ها نیز از کد زیر استفاده کردهام.
<asp:TemplateField HeaderText=" یêى کںéں">
<ItemTemplate>
<%#Eval("bimeh")%>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="bimehTextBox" runat="server" Text='<%#Eval("bimeh")%>' Width="90"></asp:TextBox>
<br />
</EditItemTemplate>
<ItemStyle VerticalAlign="Top" />
</asp:TemplateField>