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

نام تاپیک: ListBox چند ستونی

  1. #1

    ListBox چند ستونی

    سلام .
    چه جوری می شه یک listbox چندستونی ایجاد کرد .
    وقتی خاصیت multicolumn را true می کنم چه جوری با خونه های اون کار کنم ؟
    البته اگه عنصر بهتری برای ایجاد یک جدول غیر بانکی می شناسید بگید .
    متشکرم.

  2. #2
    سلام .
    وقتی که خاصیت MultiColumn را بر روی True تنظیم می نمایید ، لیست باکس آیتمها را به صورت ستونی و به گونه ای که نیازی به نوار پیمایش عمودی وجود نداشته باشد قرار میدهد . همچنین از خاصیت ColumnWidth نیز میتوانید برای تنظیم عرض هر ستون استفاده نمایید . اگر خاصیت HorizontalScrollbar را بر روی True قرار دهید ، نوار پیمایش افقی نمایش داده خواهد شد که به کاربر اجازه میدهد تا ستونهایی را که هم اکنون نمایش داده نشده اند را پیمایش نماید .

    بهترین کنترل برای نمایش جداول غیر بانکی و بانکی نیز Datagrid میباشد .
    I've just started tweeting!
    @Alireza_Maddah

  3. #3
    آقای مداح با تشکر.
    اگر ممکن است دستور افزودن یک متن به سلول (2و1) یک listbox چند ستونی را بنویسید .
    در ضمن منظور من از معرفی یک عنصر دیگر یک جدول غیر از datagrid برای کارهای بدون بانک اطلاعاتی بود که احتمالا شما MSFlexGrid رو پیشنهاد می کنید . باید بگویم که VB.NET من این عنصر رو نداره .
    من منتظر راهنمایی شما هستم. :cry:

  4. #4
    احتمالا شما MSFlexGrid رو پیشنهاد می کنید . باید بگویم که VB.NET من این عنصر رو نداره .
    منظور بنده استفاده از همان کنترل دیتا گرید بود .
    شما ابتدا باید جدول را به طور دستی همراه با داده هایش ایجاده کرده و سپس درون یک دیتاست بریزید و سپس دیتاگرید را به دیتاست بایند کنید .

    خوب ، جدولی که ما میخواهیم ایجاد کنیم شامل ستونهای زیر میباشد :

    • نام
      نام خانوادگی
      شماره تلفن
      نام پدر


    مراحل کار را آغاز میکنیم :
    - ابتدا یک کنترل Button و یک کنترل Datagrid به فرم اضافه نمایید .
    - بر روی کنترل Button دوبار کلیک کرده تا وارد ریداد Click آن شوید .

    1 - برای ایجاد یک جدول ابتدا میبایست شی ء DataTable را ایجاد نماییم . کد زیر را به رویدا کلیک دکمه اضافه نمایید :
        Dim MyTable As New DataTable("Info")


    در اینجا نام جدول ما "Info"میباشد .

    2 - سپس نوبت به ایجاد فیلدهای جدول میرسد . این کار از طریق شی ء DataColumn صورت میپذیرد .
    توجه داشته باشید که هنگام ایجاد یک فیلد شما باید اولا یک نام برای آن در نظر بگیرید و ثانیا نوع آن فیلد را معین نمایید . و بعد از اینکه فیلد مورد نظر خود را ایجاد کردیم باید آن را به کالکشن فیلدهای جدول خود اضافه کنیم . پس کد زیر را به رویداد کلیک دکمه اضافه نمایید :

            'در اینجا یک فیلد به نام "نام" ایجاد میکنیم . 

    Dim FName As New DataColumn("نام")
    'سپس نوع آن را که میخواهیم از نوع رشته ای باشد را تنظیم مینماییم .
    FName.DataType = System.Type.GetType("System.String")
    'حال این فیلد را به کالکشن ستونهای جدول خود اضافه مینماییم
    MyTable.Columns.Add(FName)
    'مراحل فوق را برای فیلدهای بعدی نیز تکرار میکنیم .

    Dim LName As New DataColumn("نام خانوادگی")
    LName.DataType = System.Type.GetType("System.String")
    MyTable.Columns.Add(LName)

    Dim Phone As New DataColumn("شماره تلفن")
    Phone.DataType = System.Type.GetType("System.String")
    MyTable.Columns.Add(Phone)

    Dim FatherName As New DataColumn("نام پدر")
    FatherName.DataType = System.Type.GetType("System.String")
    MyTable.Columns.Add(FatherName)



    3 - در این مرحله باید از آبجکت DataRow استفاده نماییم(ای این آبجکت برای دستیابی به داده های جدول ، حذف ، اضافه و یا به روزرسانی آنها استفاده میشود .). بعد از ایجاد یک شی ء از آبجت DataRow ، شما باید توسط متد NewRow مربوط به آبجکت DataTable ، یک سطر خالی در درون جدول با تمام فیلدهایی که از قبل برای جدول تنظیم کرده بودید ، اضافه نمایید . سپس میبایست سطر را با اطلاعات مورد نظر پر کرده و توسط متد Add مربوط به آبجکت DataTable ، اطلاعات آن را به جدول اضافه نمایید . کد زیر را به ادامه رویداد کلیک دکمه اضافه نمایید :

    <span dir=ltr>
            Dim Row1, Row2, Row3, Row4 As DataRow
    'سپس یک سطر خالی ایجاد میکنیم
    Row1 = MyTable.NewRow

    فیلدها را با مقادیر مورد نظر پر میکنیم .
    Row1&#40;"نام"&#41; = "علیرضا"
    Row1&#40;"نام خانوادگی"&#41; = "مداح"
    Row1&#40;"شماره تلفن"&#41; = "123456"
    Row1&#40;"نام پدر"&#41; = "علی"
    'سپس سطر را به جدول اضافه میکنیم
    MyTable.Rows.Add&#40;Row1&#41;

    'هممین عملیات را برای سطرهای دیگر نیز انجام میدهیم

    Row2 = MyTable.NewRow
    Row2&#40;"نام"&#41; = "علی"
    Row2&#40;"نام خانوادگی"&#41; = "حسنی"
    Row2&#40;"شماره تلفن"&#41; = "654321"
    Row2&#40;"نام پدر"&#41; = "مهدی"
    MyTable.Rows.Add&#40;Row2&#41;

    Row3 = MyTable.NewRow
    Row3&#40;"نام"&#41; = "رضا"
    Row3&#40;"نام خانوادگی"&#41; = "حمیدی"
    Row3&#40;"شماره تلفن"&#41; = "2468101"
    Row3&#40;"نام پدر"&#41; = "بابک"
    MyTable.Rows.Add&#40;Row3&#41;

    Row4 = MyTable.NewRow
    Row4&#40;"نام"&#41; = "سینا"
    Row4&#40;"نام خانوادگی"&#41; = "محمودی"
    Row4&#40;"شماره تلفن"&#41; = "5896321"
    Row4&#40;"نام پدر"&#41; = "بابک"
    MyTable.Rows.Add&#40;Row4&#41;
    </span>

    (کدهای این قسمت در اینجا به صورت به هم ریخته نمایش داده شده است . ولی بعد از Paste کردن در روال مربوطه ، درست میشوند . )

    4 - دست آخر باید یک دیتاست ایجاد کرده ، جدول خود را به آن اضافه کرده و سپس کنترل Datagrid را به دیتاست بایند کنیم . کد زیر را به ادامه رویداد کلیک دکمه اضافه نمایید :

            'دیتاست را ایجاد مینماییم
    Dim DS As New DataSet
    'جدول خود را به آن اضافه میکنیم
    DS.Tables.Add&#40;MyTable&#41;
    'کنترل دیتاگرید را به دیتاست بایند میکنیم
    DataGrid1.SetDataBinding&#40;DS, "Info"&#41;


    5 - حال خاصیت RightToLeft مربوطه به فرم را بر روی True قرار داده و برنامه را اجرا نمایید . بر روی دکمه کلیک کرده تا نتیجه کار را ببینید .

    (ببخشید که انشای من یه کمی مشکل داره. :oops: )
    I've just started tweeting!
    @Alireza_Maddah

  5. #5
    آقای مداح از وقتی که گذاشتید خیلی متشکرم.
    من از نوشته های شما نکات مهمی را یاد گرفتم که خیلی بدردم می خورد.
    ولی برای استفاده از جدولی بجز دیتاگرید برای کار با داده های ذخیره شده در یک فایل تصادفی هنوز مشکل دارم .
    من سوالم رو یه جور دیگه در لیست موضوعات مطرح می کنم .
    باز هم از راهنمایی های شما متشکرم.

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

  1. شرط خالی بودن listbox
    نوشته شده توسط sarnev6t در بخش C#‎‎
    پاسخ: 4
    آخرین پست: چهارشنبه 24 مهر 1387, 19:22 عصر
  2. listBox
    نوشته شده توسط benyamin_pc در بخش C#‎‎
    پاسخ: 5
    آخرین پست: پنج شنبه 07 دی 1385, 03:07 صبح
  3. مشکل با listbox
    نوشته شده توسط Tarrah در بخش برنامه نویسی با Borland C++‎ Builder
    پاسخ: 2
    آخرین پست: دوشنبه 01 آبان 1385, 00:34 صبح
  4. چطور نام همه کلاینت ها در برنامه را میتوان در listbox که در فرم کلاینت قرار دارد اضاف
    نوشته شده توسط eshaghrahimy در بخش کامپوننت های سایر شرکت ها، و توسعه کامپوننت
    پاسخ: 2
    آخرین پست: سه شنبه 28 شهریور 1385, 18:10 عصر

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

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