تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف يمكن البحث عن الأدوات الديناميكية من خلال النوع وكيف يمكن تخزين البيانات منها إلى قاعدة البيانات
#1
قمت بعمل صفحة تقوم بإضافة أدوات control أثناء التشغيل وبعد الضغط على زر button

كود :
[align=left]

Imports System.Data
Imports System.Configuration
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls

Partial Public Class [Default2]
    Inherits System.Web.UI.Page

    Private numOfColumns As Integer = 1
    Private ctr As Integer = 0
    Private table As Table = Nothing

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        If Not IsPostBack Then
            table = New Table()
            table.ID = "tableBuild"
            Session("table") = table

            ViewState("ctr") = ctr
        End If
        ctr = CType(ViewState("ctr"), Int32)
        table = DirectCast(Session("table"), Table)
        Panel1.Controls.Add(table)

    End Sub
    Private Sub GenerateTable(ByVal colsCount As Integer)
        ctr += 1

        Dim row As New TableRow()

        Dim cell As New TableCell()

        Dim tb As New TextBox()

        tb.ID = "TextBoxRow_" & ctr
        tb.Width = 80

        ' Add the control to the TableCell

        cell.Controls.Add(tb)

        ' Add the TableCell to the TableRow

        row.Cells.Add(cell)

        Dim cell1 As New TableCell()

        Dim dd As New DropDownList
        dd.ID = "dd1" & ctr

        dd.Width = 80

        Dim tb1 As New TextBox()
        tb1.ID = "TextBox1Row_" & ctr

        tb1.Width = 80

        ' Add the control to the TableCell

        cell1.Controls.Add(tb1)
        '----------
        cell1.Controls.Add(dd)
        '------------------------
        ' Add the TableCell to the TableRow

        row.Cells.Add(cell1)

        ' Add the TableRow to the Table

        table.Rows.Add(row)
        Session("table") = table
        ViewState("ctr") = ctr

    End Sub


    Protected Sub btnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAdd.Click
        numOfColumns = 1

        'Generate the Table based from the inputs

        GenerateTable(numOfColumns)
    End Sub

End Class

[/align]
لدي سؤالين
السؤال الأول كيف يمكنني تنفيذ إجراء على أدوات محدده منها بحيث يتم الاشارة إلى هذه الأدوات من خلال النوع وليس الID؟
السؤال الثاني هو كيف يمكنني تخزين البيانات التي سيتم إدخالها في مربعات النص بداخل قاعدة البيانات؟
الرد }}}
تم الشكر بواسطة:
#2
انتظرت لعل احد يجيب لكن لاقول مالدي
ماهي الفكرة ؟
لم استطع فهم المطلوب
وكلنا ننتظر احد لديه الحل.
الرد }}}
تم الشكر بواسطة:
#3
[ATTACH=CONFIG]3631[/ATTACH]
كماهو موضح في الصورة فإنه عند كل ضغطة على الزر يتم إضافة 2text box و dropdownlist
بعد أن يتم ادخال البيانات في الادوات السابقة
كيف يمكنني تخزين هذه البيانات بداخل جدول في قاعدة البيانات؟ بمعنى آخر كيف يمكن الإشارة إلى أن القيم التي سيتم إدخالها في مربعات النص بالعمود الأول سيتم تخزينها بداخل حقل col1 مثلا وهكذا.
وأن جميع أدوات dropdownlist التي سيتم اضافتهاسيتم تعبئتها ببيانات محددة وهكذا.


الملفات المرفقة صورة/صور
   

.zip   dynamic controls.zip (الحجم : 3.61 ك ب / التحميلات : 43)
الرد }}}
تم الشكر بواسطة:
#4
لم اجربها من قبل ..ساحاول بمثال او انظر للمثال المرفوع
الرد }}}
تم الشكر بواسطة:
#5


سويت صفحة جديدة بنفس المشروع باسم Default3.aspx

اضف webusercontrol.ascx ووضعته في مجلد جديد باسم mcontrols
اضفت له اي webusercontrol.ascx ثلاث ادوات:
Textbox
Dropdownlist
button

في ملف التكوين web.config

اضفت جملة الاتصال بقاعدة البيانات
كود :
<connectionStrings>
        <add name="mystr" connectionString ="provider=microsoft.ace.oledb.12.0;data source=|datadirectory|\db.accdb"/>
    </connectionStrings>
واضفت كلاس حولته الى موديول ليكون بشكله الكامل هكذا
كود :
Imports Microsoft.VisualBasic
Imports System.Data.OleDb

Public Module module1
    Public con As New OleDbConnection(ConfigurationManager.ConnectionStrings("mystr").ConnectionString)

End Module

في كود الزر في webusercontrol.ascx كتبت كود الحفظ التالي:
كود :
If TextBox1.Text.Trim = "" Then Exit Sub
        lbl.Visible = False
        Dim cm As New OleDbCommand("insert into tb (tname,kind) values(@tname,@kind)", con)
        cm.Parameters.AddWithValue("@tname", TextBox1.Text)
        cm.Parameters.AddWithValue("@kind", DropDownList1.SelectedItem.ToString)

        If con.State = Data.ConnectionState.Closed Then
            con.Open()
        End If
        Try
            cm.ExecuteNonQuery()
            lbl.Text = TextBox1.Text & "  was Saved!"
            lbl.ForeColor = Drawing.Color.Green
            lbl.Visible = True
            If con.State = Data.ConnectionState.Open Then
                con.Close()
            End If
        Catch ex As Exception
            If con.State = Data.ConnectionState.Open Then
                con.Close()
            End If

            Response.Write("<h3>" & Err.Description & "</h3>")
        End Try

المشكلة انه لابد من نقر كل زر على حدة لم اتمكن من الوصول للحدث من زر واحد في الصفحة الرئيسية

وفي الصفحة الرئيسية يوجد:
ضمن الوسم Form

وضعت الاتي:
كود :
<asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
    <div>
        <asp:Button ID="Button1" runat="server" Text="add user control" />
    </div>
    <hr />
        <asp:Panel ID="Panel1" runat="server">
        </asp:Panel>
    <hr />
    <div>
    </div>
    </ContentTemplate>
    <Triggers>
    <asp:AsyncPostBackTrigger ControlID="button1" EventName="click" />

    </Triggers>
    </asp:UpdatePanel>

وعد حدث تحميل الصفحة كتبت
كود :
If con.State = Data.ConnectionState.Open Then
            con.Close()
        End If

        If IsPostBack Then
            Dim num As Integer = CInt(ViewState("Counter"))


            For i As Integer = 0 To num - 1
                Dim uc1 = DirectCast(LoadControl("~\mcontrols\wuc1.ascx"), mcontrols_wuc1)

                Panel1.Controls.Add(uc1)

            Next
        Else
            ViewState("Counter") = 1

        End If

وعند زر تحميل عنصر التحكم webusercontrol.ascx
كتبت
كود :
ViewState("Counter") = CInt(ViewState("Counter")) + 1



ارجو ممن لديه المعلومة كيف نصل لحدث الزر بعد تحميله الى الصفحة ان يكرمنا به.
هذه محاولتي ارجو ان تلبي ولو عشر المطلوب


الملفات المرفقة
.zip   dynamic controls (2).zip (الحجم : 17.32 ك ب / التحميلات : 34)
الرد }}}
تم الشكر بواسطة:
#6
اعتقد المطلوب ادخال بيانات إلى قاعدة البيانات بشكل متكرر ،

أبحث عن ادخال البيانات بواسطة القريد فيو .
يا رحمن الدنيا والآخرة ورحيمهما
الرد }}}
تم الشكر بواسطة:
#7
أخ سعود لم أتمكن من تحميل الملف
الرد }}}
تم الشكر بواسطة:
#8
حريف برمجة كتب :اعتقد المطلوب ادخال بيانات إلى قاعدة البيانات بشكل متكرر ،

أبحث عن ادخال البيانات بواسطة القريد فيو .
أخي حريف برمجة
أنا لم استخدم أداة القريد فيو لأنني لم أجد طريقة تسمح للمستخدم بالتعامل معها وهي فارغه ومن ثم ادخال البيانات إليها من الصفر
قمت بالتعديل والمحاولة المستمرة حتى وصلت إلى هذه النتيجه في الملف المرفق والتي توقفت فيها عند عملية الحفظ


الملفات المرفقة
.zip   registrationsite.zip (الحجم : 240.9 ك ب / التحميلات : 33)
الرد }}}
تم الشكر بواسطة:
#9
dena كتب :أخ سعود لم أتمكن من تحميل الملف



حملته الحين ورفعته لموقع ثاني
الرد }}}
تم الشكر بواسطة:
#10
مو صحيح ممكن اضافة بيانات من الصفر وممكن كل شي

حملي المرفق وجربي براحتك واي غموض انا موجود ....


الملفات المرفقة
.rar   insert-delete from datagrid.rar (الحجم : 16.28 ك ب / التحميلات : 38)
يا رحمن الدنيا والآخرة ورحيمهما
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مقال] كيفية برمجة منتدى TextForum بدون قاعدة بيانات سعود 54 8,426 15-11-21, 09:21 PM
آخر رد: سعود
  [سؤال] خطأ عند انشاء قاعدة بيانات من داخل فجول استوديو2013 alsihran 4 2,178 31-03-20, 01:47 AM
آخر رد: Amir_Alzubidy
  مشكلة عرض البيانات في text box alshandodi 0 1,515 23-07-19, 01:18 PM
آخر رد: alshandodi
  استدعاء vb.net subroutine من خلال javascript ibraheam 0 1,398 01-02-19, 10:56 PM
آخر رد: ibraheam
  [سؤال] هل يمكن استخدام windows form control داخل asp.net montser 2 2,056 28-03-18, 12:01 PM
آخر رد: montser
  [VB.NET] كود بسيط لحذف البيانات من gridview Hunter-X 1 2,255 11-01-17, 02:21 AM
آخر رد: مساعدة
  كيف يتم بحت من خلال taxtbox وتضهر بيانات في داتا قريد فيو habib 2 2,699 29-10-16, 05:20 PM
آخر رد: أبو عمر
  ماهي قاعدة البيانات المخصصة لasp.net صبري زينوبي 2 2,236 20-10-16, 03:26 PM
آخر رد: صبري زينوبي
  مشكلة في اضافة الموظوع أو البيانات أبو فلان 3 2,764 25-05-16, 02:48 AM
آخر رد: أبو فلان
  [نقاش] كيف اخذ رابط الفيديو من قاعدة البيانات ابرهيم شوقى 0 1,756 12-03-16, 10:00 PM
آخر رد: ابرهيم شوقى

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم