نمایش نتایج 1 تا 5 از 5

نام تاپیک: ایجاد Relationship بصورت داینامیک

  1. #1
    کاربر تازه وارد آواتار edisoon
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    54

    ایجاد Relationship بصورت داینامیک

    من در یک فرم دو عدد دیتاگرید قرار داده ام و هر دیتاگرید را توسط یک DataSet جداگانه و با استفاده از کدنویسی و در زمان اجرا پر میکنم. سئوال من این است که چگونه میتوانم رابطه بین این دو گرید را که یکی از آنها زیرمجموعه ای از هر رکورد از گرید اول میباشد را برقرار کنم بصورتیکه وقتی در دیتاگرید اول جابجا میشویم در دیتاگرید دوم زیرمجموعه های آن رکورد نمایش داده شود.

  2. #2
    کاربر دائمی آواتار mostafaaa
    تاریخ عضویت
    دی 1386
    محل زندگی
    جزیره کیش
    پست
    723

    نقل قول: ایجاد Relationship بصورت داینامیک

    به جای دو تا DataSet از یه DataSet استفاده میکنی و با استفاده از متد RelationShip ارتباطات مربوطه رو ایجاد میکنی.

  3. #3
    کاربر تازه وارد آواتار edisoon
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    54

    نقل قول: ایجاد Relationship بصورت داینامیک

    دوست عزیز ممنونم، به گفته شما عمل کردم و از یک DataSet استفاده کردم. ولی متاسفانه موفق نشدم Relashin رو با کدنویسی برقرار کنم. اگه زحمت بکشی کد نمونه ای برای راهنمایی بنویسی دستات رو ماچ میکنم

  4. #4
    کاربر دائمی
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    تهران
    پست
    172

    نقل قول: ایجاد Relationship بصورت داینامیک

    به کد زیر دقت کن، این کد یک ارتباط بین دوتیبل موجود در یک دیتاست ایجاد میکند
        Private Sub CreateDataRelation()
    Dim obj_DataRelation As System.Data.DataRelation

    Dim obj_ParentClmn, obj_ChildClmn As DataColumn

    'Get the reference of colums to create a relation between.
    obj_ParentClmn = obj_DataSet.Tables("Category").Columns("CategoryId ")
    obj_ChildClmn = obj_DataSet.Tables("Product").Columns("CategoryId" )

    'Creates a relation object, Parameters required are - New Relation Name, Object of Parent & Child column respectively.
    obj_DataRelation = New DataRelation("relation_Category_Product", obj_ParentClmn, obj_ChildClmn)

    obj_DataSet.Relations.Add(obj_DataRelation) ' Adding Relation to the dataset that holds the tables.

    End Sub

    حالا میتونی دست آقا مصطفی رو ماچ کنی، چون فعالیت خوبی داره توی سایت ;)

  5. #5
    کاربر دائمی آواتار mostafaaa
    تاریخ عضویت
    دی 1386
    محل زندگی
    جزیره کیش
    پست
    723

    نقل قول: ایجاد Relationship بصورت داینامیک

    اینم یه مثال کامل با دو تا DataGridView
    Imports System.Data.OleDb
    Public Class Form1
    Const ConnectionString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb"
    Dim Connection As OleDbConnection
    Dim DataAdapter As OleDbDataAdapter
    Dim DataSet As New DataSet
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Connection = New OleDbConnection(ConnectionString)
    Connection.Open()
    DataAdapter = New OleDbDataAdapter(New OleDbCommand("SELECT * FROM tblName", Connection))
    DataAdapter.Fill(DataSet, "tblName")
    DataAdapter = New OleDbDataAdapter(New OleDbCommand("SELECT * FROM tblFamily", Connection))
    DataAdapter.Fill(DataSet, "tblFamily")
    DataSet.Relations.Add("MyRelation", Me.DataSet.Tables("tblName").Columns("ID") _
    , Me.DataSet.Tables("tblFamily").Columns("ID"))
    Me.DataGridView1.DataSource = Me.DataSet
    Me.DataGridView1.DataMember = "tblName"
    End Sub

    Private Sub DataGridView1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridView1.Click
    Me.DataSet.Relations("MyRelation").ChildTable.DefaultView.RowFilter = "ID=" & _
    Me.DataGridView1.CurrentRow.Cells("ID").Value
    Me.DataGridView2.DataSource = Me.DataSet.Relations("MyRelation").ChildTable
    End Sub
    End Class




قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •