لدى حقل unbound عبارة عن textbox داخل Datagrid اريد ادراج القيمة التى بداخله عند ادراج الصف
سارفق صورة للمشكلة مع الكود
اخي انت تقول انك وضعته داخل TextBox
استخدم هذا الكود للوصول لل TextBox
string txtValue;
if(GridView1.Rows(i).FindControl("TextBoxID") is TextBox)
{
TextBox txt=(TextBox)GridView1.Rows(i).FindControl("TextBoxID");
txtValue=txt.Text;}
واستخدم القيمة من المتغير txtValue كما شئت بعد ذلك
اللهم ارزقنا فهم النبيين وحفظ المرسلين
الشركة التطبيقية لخدمات الحاسب الالي [حاسب]
الاخ hock
انا عندى الداتا جريد بيتم عرض هي id الخاص بالطلب اضفت أنا template filed ووضعت بداخله textbox لتسجيل الدرجة لكل طالب
المطلوب هو فى جملة عند الادراج يدرج رقم الطالب ولا يدرج الدرجة بمعنى اصح مش عارف رقم العمود اللى فيه template
ولو اخدت قيمة الtextbox بالطريقة اللى انت تفضلت وقلتها ازاى اضعها فى جملة Insert
السلام عليكم
للحصول على رقم عمود
GridView1.Rows.Cells[0].Text;
حيث تمثل الصفر للعمود الاول والواحد للعمود الثاني وهكذا
اتوقع المثال المرفق يحل مشكلة
تم تعديل هذه المشاركة بواسطة X-File في 10 يوليو 2010 في 15:31
In bad state
اشكرك على الرد
ممكن يكون المثال بال VB
اكون شاكر
السلام عليكم
اخي الكريم انا لا اعرف vb
ولكن يمكنك استخدام مواقع للتحويل من
vb to c sharp
او بالعكس
Imports System.Configuration
Imports System.Data
Imports System.Linq
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.HtmlControls
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Xml.Linq
Imports System.Data.SqlClient
Imports System.Web.Configuration
Public Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As EventArgs)
End Sub
Protected Sub Button1_Click(sender As Object, e As EventArgs)
Dim strconn As String = WebConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Dim con As New SqlConnection(strconn)
Dim txtValue As String
For i As Integer = 0 To GridView1.Rows.Count - 1
If TypeOf GridView1.Rows(i).FindControl("TextBox1") Is TextBox Then
Dim txt As TextBox = DirectCast(GridView1.Rows(i).FindControl("TextBox1"), TextBox)
txtValue = txt.Text
Dim id As Integer = Convert.ToInt32(GridView1.Rows(i).Cells(0).Text)
Dim strcom As String = "UPDATE test SET mark = @mark WHERE (id = @id)"
Dim cmd As New SqlCommand(strcom, con)
cmd.Parameters.AddWithValue("@mark", txtValue)
cmd.Parameters.AddWithValue("@id", id)
Try
con.Open()
cmd.ExecuteNonQuery()
Label1.Text = Label1.Text + id.ToString() & " " & txtValue & "<br />"
Catch re As NullReferenceException
Label1.Text = re.Message & "<br />" & re.HelpLink & "<br />" & re.Source
Finally
con.Close()
End Try
End If
Next
Response.Redirect("Default.aspx")
End Sub
End ClassIn bad state
يفضل ان تضع HiddenField وتضع بداخله الID وتحصل على قيمته كما حصلنا على القيمة كمن داخل الTextBox
اللهم ارزقنا فهم النبيين وحفظ المرسلين
الشركة التطبيقية لخدمات الحاسب الالي [حاسب]
الاخوة بالمنتدى اشكركم على الرد
ولكن مع الاسف جربت الحل وما اتنفذ ولذلك سارفق لكم المشكلة مع المثال الذى اريد التطبيق عليه