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

نام تاپیک: نمایش فیلدهای 2 یا چند Table در DataGrid

  1. #1

    Question نمایش فیلدهای 2 یا چند Table در DataGrid

    با سلام خدمت تمامی دوستان.
    چه طوری میشه که در یک DataGrid اطلاعات فیلدهای چند Table که با هم Relation دارند را برقرار کرد.
    من از یک dataset استفاده میکنم که سه تا از Table ها باید اطلاعاتشون را (از هر Table تعدادی از فیلدها ) نشون بدم . DataSource برای DataGrid به DataSet ست شده ولی در قسمت ،TableStyles با اینکه فیلدامو انتخاب میکنم ولی جواب نمیگیرم . لطفا راهنمائیم کنید.

  2. #2
    وقتی که چند تا جدول رو از دیتابیس در یک دیتاست می‌ریزید، رابطه جدول‌ها به صورت خودکار تنظیم نمی‌شن. یا باید به صورت گرافیکی، رابطه رو در دیتاست ایجاد کنید ( با ویرایش فایل xsd. دیتاست ) یا قبل از اینکه دیتاست رو Fill کنید، با استفاده از کدنویسی و خاصیت dsnam.Relations.Add ، رابطه مورد نظرتون رو ایجاد کنید. بعد وقتی که دیتاست رو به گرید بایند کنید همه چیز درست نشون داده می‌شه.

    برای جزییات بیشتر

  3. #3
    از راهنمایی شما بسیار ممنونم.
    ولی من این کارها را انجام داده ام ، Table ها با همدیگر join هستند. ولی من چطور اطلاعات فیلدهای مختلف از Table های مختلف را با Header Text فارسی نمایش بدم.

  4. #4
    اشکالتون تو نمایش رابطه‌هاست یا فارسی نویسی ؟
    منظورتون از Header Text چیه؟ نام ستون یا caption مربوط به DataGrid ؟

    پ.ن : با یک نگاه به Style متوجه شدم منظورتون چیه. به پست اول دقت نکرده بودم.

    من در مورد فارسی نویسی خاصیت HeaderText مربوط به ColumnStyle مشکلی ندارم. مطمئن هستید که فرم رو به صورت یونیکد ذخیره می‌کنید ؟ ضمنا MappingName مربوط به TableStyle و ColumnStyle رو هم چک کنید.
    آخرین ویرایش به وسیله یاشار : پنج شنبه 13 مرداد 1384 در 15:48 عصر

  5. #5
    با سلام خدمت شما و تشکر از پاسخ شما.
    ظاهرا من سوال خودم را به صورت صحیح مطرح نمیکنم .
    ببینید من سه تا Table دارم که یکی اطلاعات نام و نام خانوادگی دیگری اطلاعات پرسنلی و یکی هم اطلاعات سوابق درسی را برای یک شخص ذخیره میکنند که Table ها با هم join هستند . من میخوام اطلاعات 3 table را با هم در یک گرید نمایش دهم ولی نتونستم . با تشکر

  6. #6
    شاید هم من سوال شما رو درست متوجه نمی‌شم.

    من ساختار دیتابیس و رابطه بین جدول‌های شما رو نمی‌دونم. ولی تا جایی به که نمایش اونها در گرید مربوط می‌شه فکر می‌کنم مثال زیر بهتون کمک کنه. کافیه رابطه‌ها رو به صورت کدنویسی یا گرافیکی در دیتاست مشخص کنید ( اینجا از کد استفاده شده ) و جدول اصلی رو به گرید بایند کنید. از اونجا به بعدش رو گرید خودش می‌دونه چکار کنه.
    عکس های ضمیمه عکس های ضمیمه
    فایل های ضمیمه فایل های ضمیمه

  7. #7
    خوب در همین حالت اگر بخواهیم در data grid بعد از نام و نام خانوادگی Field های Table اطلاعات پرسنلی و سابقه تحصیلی ... به صورت خودکار در کنار این دو Column (نام و نام خانوادگی) نمایش دهد چه کار کنم .

  8. #8
    در اینصورت شما در واقع می‌خواهید یک جدول در دیتاگرید نمایش داده بشه، و اطلاعات این جدول از سه جدول دیگه از دیتابیس تامین میشه. اگر منظورتون رو درست فهمیده باشم، به نظر من بهترین روش اینه که در سطح دیتابیس یک View درست کنید که اطلاعاتشو از این سه جدول میگیره و «یک» جدول رو نمایش بدید.

  9. #9
    با سلام و خسته نباشید خدمت تمامی دوستان.
    راستشو بخواین من این کار را کرده بودم . یعنی در Data Base ام یک View ساختم از چند Table . داخل برنامم Data Grid به این View متصل می شه . ولی یه اشکالی وجود داره .!!!!!!!!!!!!!!
    من هم باید View را داخل data set ام Fill کنم هم Table ها . تازه وقتی Data ها ویرایش یا حذف یا اضافه بشن ، هم Table ها باید تغییر کنن هم View (چون باید نمایش داده بشن) که کارهای الکی زیادیه.!!!!
    مطمئنم یه جای کار میلنگه . برای همین خواستم بدونم میشه یه چیزی مثل View داخل Data Set ساخت که اولا با اون بتونم با Data Grid نمایش بدم ، ثانیا با ویرایش Data داخل Table این View خودش تغییرات را نشون بده . با تشکر ........

  10. #10
    کاربر دائمی
    تاریخ عضویت
    آذر 1382
    محل زندگی
    gh_fereydonpoor@yahoo.com
    پست
    198
    سلام به دوستان
    من هم این مشکل را دارم ولی سوال من این است
    که من می خواهم که زمانی که روی + کلیک می شود به جای لینک خود اطلاعات و فیلدها نمایش داده شود
    در مورد مشکل دوستمون هم ، نه لازم نیست که هم View را Fill کنید و هم Table رو بلکه کافیه View رو Fill کنید زیرا که کلیه اطلاعات را در View استخراج کرده اید.

    یا علی
    مرسی ممنون

  11. #11
    با سلام
    آقای فریدون پور ، ولی اینکار از یعنی جدا کردن table از view سخت تر از fill کردن table ها و ....
    تازه فکر میکنم view اکثرا برای نمایشه تا کارهای Insert , Edit و ....

  12. #12
    همونطور که دوستمون اشاره کردن لازم نیست دیتاست شامل جدول‌های منبع هم باشه. شما یک View «در سطح دیتابیس» درست کنید که عبارت Select ش از چند جدول استفاده می‌کنه. علت اینکه روی دیتابیس تاکید می‌کنم اینه که در ToolBox/Data هم یک DataView هست که در سطح دیتاست View درست می‌کنه که به بحث ما ربطی نداره.

    وقتی این View رو از داخل ServerExplorer روی فرمتون Drag کنید، بهتون یک DataAdapter می‌ده که درست مثل یک جدول جداگانه رفتار می‌کنه. اگر از روی این View یک دیتاست بسازید، دیتاست شامل یک جدول خواهد بود که همون ستون‌هایی که شما می‌خواهید رو نشون خواهد داد و اگر مقادیر رو عوض کنید، تغییرات در جدول منبع اعمال خواهند شد. اشکالی که باقی‌ می‌مونه اینه که اگر عبارت Select از یک حدی پیچیده‌تر باشه، ADO.Net نمی‌تونه عبارت‌های Update و Delete رو به صورت خودکار تولید کنه، که شما باید دستی اینها رو وارد کنید.

    در مورد اینکه به جای لینک خود اطلاعات و فیلدها نمایش داده شود، فکر نمی‌کنم همچین کاری با گرید استاندارد VS امکان پذیر باشه. شما باید دنبال کنترل‌های متفرقه باشید.

  13. #13
    کاربر دائمی
    تاریخ عضویت
    آذر 1382
    محل زندگی
    gh_fereydonpoor@yahoo.com
    پست
    198
    ممنون مرسی
    در مورد اینکه View قابل Edit نیست که منتفی است چون شما می توانید این کا رو انجام دهید
    یا علی

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

  1. how Insert in ADO Table but not at end of table
    نوشته شده توسط mirhashemi در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 2
    آخرین پست: سه شنبه 17 مهر 1386, 13:08 عصر
  2. Error در update table SQL از طریق Datagrid
    نوشته شده توسط en_bey در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: پنج شنبه 17 خرداد 1386, 22:43 عصر
  3. چسباندن دو table به یک Datagrid
    نوشته شده توسط ascpro در بخش VB.NET
    پاسخ: 16
    آخرین پست: دوشنبه 20 فروردین 1386, 22:25 عصر
  4. چک کردن وجود table و import کردنtable
    نوشته شده توسط mohkhosh در بخش Access
    پاسخ: 5
    آخرین پست: پنج شنبه 18 خرداد 1385, 08:12 صبح
  5. پاسخ: 3
    آخرین پست: یک شنبه 06 دی 1383, 17:03 عصر

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

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