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

نام تاپیک: تبدیل فرم به یک کنترل یا شیء فرزند و نمایش آن در یک Container Control مثل Panel

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    کاربر دائمی آواتار ROSTAM2
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    فارس
    پست
    2,010

    تبدیل فرم به یک کنترل یا شیء فرزند و نمایش آن در یک Container Control مثل Panel

    به نام خدا
    سلام؛
    در اینجا می خوایم یک فرم رو تبدیل کنیم به Child Control و اون رو در یک Panel که یک Container Control هستش در یک فرم دیگر نمایش دهیم، و برای مثال یک خصوصیت داریم که مقدار اون رو در فرم والد یا Parent فراخوانی می کنیم:

    این تصویر و کدهای فرمی هست که می خوایم شیء فرزند بشه:

    Child Form.jpg


    Public Class Form1
    Private Expr As New Dictionary(Of String, String)


    Public Property SelectedItem() As KeyValuePair(Of String, String)
    Get
    Return Me.ComboBox1.SelectedItem
    End Get
    Set(ByVal value As KeyValuePair(Of String, String))
    Me.ComboBox1.SelectedItem = value
    End Set
    End Property


    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    With Expr
    .Add("Item1", "Item1 Is selected.")
    .Add("Item2", "Item2 Is selected.")
    .Add("Item3", "Item3 Is selected.")
    .Add("Item4", "Item4 Is selected.")
    End With
    With Me.ComboBox1.Items
    .Clear()
    For Each Item As KeyValuePair(Of String, String) In Expr
    .Add(Item)
    Next
    End With
    Me.ComboBox1.SelectedIndex = 0
    End Sub
    Private Sub ComboBox1_DrawItem(sender As System.Object, e As System.Windows.Forms.DrawItemEventArgs) Handles ComboBox1.DrawItem
    Dim G As Graphics = e.Graphics
    Dim V As String = CType(Me.ComboBox1.Items(e.Index), KeyValuePair(Of String, String)).Key
    e.DrawBackground()
    G.DrawString(V, e.Font, New SolidBrush(e.ForeColor), 2, e.Bounds.Y + 2)
    End Sub


    End Class


    و این هم فرم اصلی و کد فراخوانی فرم اول در یک Panel:

    Parent Form.jpg


    Public Class HelloWorld


    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    With Form1.SelectedItem
    MsgBox(String.Format("Selected Item Key is {0} and Value is: {1}", .Key, .Value))
    End With
    End Sub


    Private Sub HelloWorld_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    With Form1
    .TopLevel = False
    .WindowState = FormWindowState.Maximized
    .FormBorderStyle = Windows.Forms.FormBorderStyle.None
    .Visible = True
    End With
    Me.Panel1.Controls.Add(Form1)
    End Sub
    End Class



    این هم حالت RunTime:

    Parent Form RunTime.jpg
    آخرین ویرایش به وسیله ROSTAM2 : یک شنبه 26 تیر 1401 در 18:20 عصر

تاپیک های مشابه

  1. سوال: ساخت Control Panel با #C
    نوشته شده توسط Peresident Kiumars در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: پنج شنبه 08 فروردین 1392, 11:51 صبح
  2. سوال: حذف اسم نرم افزار از Control Panel
    نوشته شده توسط morteza271 در بخش تولید و توسعه برنامه های Setup و Install
    پاسخ: 1
    آخرین پست: سه شنبه 26 بهمن 1389, 15:54 عصر
  3. سوال: من ActiveX Control Test Container ندارم؟!!
    نوشته شده توسط feri88 در بخش برنامه نویسی با MFC و ++Visual C
    پاسخ: 0
    آخرین پست: جمعه 13 فروردین 1389, 14:02 عصر
  4. ساخت Control Panel با PHP ؟
    نوشته شده توسط cybercoder در بخش PHP
    پاسخ: 8
    آخرین پست: یک شنبه 04 بهمن 1383, 01:06 صبح

برچسب های این تاپیک

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

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