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

نام تاپیک: طریقه ساخت Property های ایتم دار !

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1391
    محل زندگی
    کرج - هشتگرد
    سن
    30
    پست
    47

    Question طریقه ساخت Property های ایتم دار !

    باسلام .
    میخواستم طریقه ساخت Property های که ایتم دارن رو بدونم . این نوع Property ها با اسم Items در بیشتر کنترل ها تعریف میشن .

    Capture.JPG

    ممنون .

  2. #2

    نقل قول: طریقه ساخت Property های ایتم دار !

    اگر نوع Property که تعریف میکنید از ICollection ارث بری داشته باشه اون رو به این صورت نشون میده.
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1391
    محل زندگی
    کرج - هشتگرد
    سن
    30
    پست
    47

    نقل قول: طریقه ساخت Property های ایتم دار !

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    اگر نوع Property که تعریف میکنید از ICollection ارث بری داشته باشه اون رو به این صورت نشون میده.
    سلام من یک کلاس به این صورت تعریف کردم .

    Public Class Car 
    Inherits System.Windows.Forms.Control

    Public Property Items As List(Of Item)
    Get


    End Get
    Set(value As List(Of Item))


    End Set
    End Property


    Public Class Item
    Public Property Name As String
    Public Property Color As Color
    End Class

    End Class


    الان مشکلم با ذخیره و بازیابی ایتم هاست .

  4. #4

    نقل قول: طریقه ساخت Property های ایتم دار !

    چه مشکلی داری؟
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  5. #5

    نقل قول: طریقه ساخت Property های ایتم دار !

    البته درستش اینه که اینطوری بنویسی :

    Public Class Car    Inherits System.Windows.Forms.Control

    Private _Items As List(Of Item) = New List(Of Item)
    Public Property Items As List(Of Item)
    Get
    Return _Items
    End Get
    Set(value As List(Of Item))
    _Items = value
    End Set
    End Property


    Public Class Item
    Public Property Name As String
    Public Property Color As Color
    End Class

    End Class
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  6. #6
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1391
    محل زندگی
    کرج - هشتگرد
    سن
    30
    پست
    47

    نقل قول: طریقه ساخت Property های ایتم دار !

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    البته درستش اینه که اینطوری بنویسی :

    Public Class Car    Inherits System.Windows.Forms.Control

    Private _Items As List(Of Item) = New List(Of Item)
    Public Property Items As List(Of Item)
    Get
    Return _Items
    End Get
    Set(value As List(Of Item))
    _Items = value
    End Set
    End Property


    Public Class Item
    Public Property Name As String
    Public Property Color As Color
    End Class

    End Class
    ممنون ولی وقع اضافه کردن به فرم Error میده ! داخل User Control هم امتهان کردم .

  7. #7

    نقل قول: طریقه ساخت Property های ایتم دار !

    Error ی که میده چیه!؟
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  8. #8
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1391
    محل زندگی
    کرج - هشتگرد
    سن
    30
    پست
    47

    نقل قول: طریقه ساخت Property های ایتم دار !

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    Error ی که میده چیه!؟
    سلام . این Error ی هست که موقع اضافه کردن کنترل به فرم نشون میده .

    Capture.JPG

  9. #9
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1391
    محل زندگی
    کرج - هشتگرد
    سن
    30
    پست
    47

    نقل قول: طریقه ساخت Property های ایتم دار !

    کسی دلیل این خطا رو نمیدونه ؟

  10. #10

    نقل قول: طریقه ساخت Property های ایتم دار !

    PublicClassItem رو به یک کلاس جداگانه انتقال بده ببین درست میشه. حدثی نمیشه گفت اگر سورست کوچیکه بزارش اینجا بررسی کنیم.
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

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

    نقل قول: طریقه ساخت Property های ایتم دار !

    نقل قول نوشته شده توسط Purya Fallah مشاهده تاپیک
    کسی دلیل این خطا رو نمیدونه ؟
    سلام به همه.
    کلاسی که بعنوان Type کالکشن تعیین شده باید بصورت ساده به کالکشن ارائه بشه تا در دیزانر قابل تجزیه و تبدیل باشه و همچنین باید از اتریبیوت <Serializable()> برای کلاس استفاده بشه.


    Serializable.jpg

    این هم خصوصیت که باید براش چند تا اتریبیوت استفاده کنید از جمله Editor البته اگه سفارشی باشه و DesignerSerializationVisibility(DesignerSerializat ionVisibility.Visible):

    Custom Collection.jpg

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

    نقل قول: طریقه ساخت Property های ایتم دار !

    سلام مجدد.

    برای زمانی که یک دیکشنری داریم که مقادیر باید به اون اضافه بشه مثل تصویر دوم از پست 11، در ویرایشگر سفارشی حتما باید از TypeDescryptor برای ذخیر مقادیر دیکشنری استفاده بشه.


    Protected RegistryDatasValue As New Dictionary(Of Integer, RegistryDataItem)
    <ProviderType(ProvideTypes.RegistryData)>
    <Browsable(True), RefreshProperties(RefreshProperties.All)>
    <Editor(GetType(StringTableCollectionEditor), GetType(Drawing.Design.UITypeEditor))>
    <DesignerSerializationVisibility(DesignerSerializa tionVisibility.Visible)>
    Public Property RegistryDatas() As Dictionary(Of Integer, RegistryDataItem)
    Get
    Return RegistryDatasValue
    End Get
    Set(ByVal value As Dictionary(Of Integer, RegistryDataItem))
    RegistryDatasValue = value
    End Set
    End Property


    متود ایجاد شده برای این کار که باید در ویرایشگر خصوصیت و بعد از Ok کردن پنجره یا بستن لیست کشویی خصوصیت اعمال بشه:

        Private Sub SetPropertyValue(Instance As Object, PropertyName As String, Value As Object)
    Dim StringsDescryptor As PropertyDescriptor = TypeDescriptor.
    GetProperties(Instance)(PropertyName)
    StringsDescryptor.SetValue(Instance, Value)
    End Sub

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

    نقل قول: طریقه ساخت Property های ایتم دار !

    سلام جدید

    من می خوام خصوصیات یک کلاس رو بر اساس نام داشته باشم، شرایط این درخواست به این صورت هست که نام خصوصیت از کاربر گرفته می شه پس بزرگ و کوچکی کاراکترهای نام خصوصیات رو کاربر تعیین می کنه و متود GetProperty نام خصوصیت رو دقیق می خواد....

    آیا روشی غیر از جستجو در حصوصیات برای آسان کردن این دستور هست یا خیر؟


    ''' <summary>
    '''
    ''' </summary>
    ''' <param name="Porject"></param>
    ''' <param name="Name">OptionName</param>
    ''' <param name="Value">OptionValue</param>
    ''' <remarks></remarks>
    Function SetPropertyValue(ByRef Porject As ProjectItem, Name As String, Value As String) As Boolean
    Console.WriteLine("{0} : {1}", Name, Name.Length)
    Dim pI As PropertyInfo = GetType(ProjectItem).GetProperty(Name)
    Console.WriteLine(pI.Name)
    If pI Is Nothing OrElse Value.Length = 0 Then Return False


    pI.SetValue(Project, Value, New Object() {})
    Return True
    End Function

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

    نقل قول: طریقه ساخت Property های ایتم دار !

    من از این روش استفاده کردم:


    Function CreateQuery(Properties As Dictionary(Of String, String)) As String
    Dim Value As String = ""
    Dim Query As String = "SELECT * FROM AppProjects WHERE"
    Dim x As Integer = 0
    For Each p As PropertyInfo In GetType(ProjectItem).GetProperties()
    For Each [Property] As KeyValuePair(Of String, String) In Properties
    If p.Name.ToLower = [Property].Key.ToLower Then
    Value = [Property].Value
    GoTo AddToQuery
    End If
    Next
    Continue For
    AddToQuery: If Value.Length > 0 Then
    If x > 0 Then
    Query += " AND"
    End If
    Query += String.Format(" {0} LIKE N'%{1}%'", p.Name, Value)
    x += 1
    End If
    Next
    If x = 0 Then Return ""
    Return Query
    End Function

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

    نقل قول: طریقه ساخت Property های ایتم دار !

    یک مورد دیگه هم هست:

    من می خوام خصوصیات بر اساس ترتیبی که خودم تعیین می کنم چاپ بشن....


    Sub WriteProjectFields(p As ProjectsDataset.AppProjectsRow)
    'Get Item-Name Max-Length....
    Dim MaxLen As Integer = 0
    Dim Value As Object
    Dim PInfo As System.Reflection.PropertyInfo
    For Each pI As PropertyInfo In GetType(ProjectItem).GetProperties()
    If pI.Name.ToLower = "id" Then Continue For
    PInfo = GetType(ProjectsDataset.AppProjectsRow).GetPropert y(pI.Name)
    Value = PInfo.GetValue(p, New Object() {})
    If IsDBNull(Value) = False AndAlso String.IsNullOrEmpty(Value) = False Then
    If pI.Name.Length > MaxLen Then MaxLen = pI.Name.Length
    End If
    Next
    If MaxLen = 0 Then
    Console.ForegroundColor = ConsoleColor.DarkCyan
    Console.WriteLine("{0} Project has not any Information.", vbTab)
    Exit Sub
    End If
    '-----------------------
    For Each pI As PropertyInfo In GetType(ProjectItem).GetProperties()
    If pI.Name.ToLower = "id" Then Continue For
    PInfo = GetType(ProjectsDataset.AppProjectsRow).GetPropert y(pI.Name)
    Value = PInfo.GetValue(p, New Object() {})
    If IsDBNull(Value) = 0 AndAlso String.IsNullOrEmpty(Value) = False Then
    WriteField(pI.Name, Value, MaxLen + 1)
    End If
    Next
    End Sub

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

    نقل قول: طریقه ساخت Property های ایتم دار !

    من با این روش مرتب سازی دلخواهم رو روی خصوصیات اعمال کردم

    Screenshot 2024-10-18 153958.jpg

    یک آرایه متشکل از نام خصوصیات:


    Public ReadOnly Property SortedFieldNames() As String()
    Get
    Dim Expr As String() =
    {"ID", "Title", "Category", "ProjectType", "Language",
    "StartDate", "ComputerName", "Solution", "Documents",
    "Fonts", "DatabaseName", "DatabaseType", "DatabaseProject",
    "Package", "Password", "Details", "EndDate"}
    Return Expr
    End Get
    End Property


    استفاده:


    For Each Field As String In SortedFieldNames
    If Field.ToLower = "id" Then Continue For
    PInfo = GetType(ProjectsDataset.AppProjectsRow).GetPropert y(Field)
    Value = PInfo.GetValue(p, New Object() {})
    If IsDBNull(Value) = 0 OrElse String.IsNullOrEmpty(Value) = False Then
    WriteField(Field, Value, MaxLen + 1)
    End If
    Next
    آخرین ویرایش به وسیله ROSTAM2 : جمعه 27 مهر 1403 در 21:05 عصر

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

  1. روش ساخت لینک های زمان دار
    نوشته شده توسط saman_kiker در بخش PHP
    پاسخ: 12
    آخرین پست: سه شنبه 13 خرداد 1393, 00:25 صبح
  2. سوال: طریقه ساخت زبانه مانند زبانه های نود 32 ؟؟؟
    نوشته شده توسط tam2145 در بخش VB.NET
    پاسخ: 4
    آخرین پست: چهارشنبه 17 اسفند 1390, 13:31 عصر
  3. سوال: طریقه ساخت dll و استفاده از مقادیر آن در برنامه های دیگر
    نوشته شده توسط payam880 در بخش VB.NET
    پاسخ: 5
    آخرین پست: دوشنبه 15 آذر 1389, 15:29 عصر
  4. سوال:طریقه استفاده از کلید های جهت دار
    نوشته شده توسط moharramiasl در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 2
    آخرین پست: چهارشنبه 18 آذر 1388, 13:40 عصر
  5. طریقه نوشتن propertis پارامتر دار
    نوشته شده توسط zehs_sha در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 03 دی 1382, 18:40 عصر

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

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