PDA

View Full Version : نحوه ست کردن نتیجه join به دیتاگرید ؟



bazikadeh
چهارشنبه 05 آذر 1393, 17:36 عصر
من یک join نوشتم بین دو جدول در linq که نتیجه آن را میخوام با فیلد های که خودم قرار دادم در دیتا گرید قرار داده بشه.
یعنی میخوام در دیتاگیرید چهار فیلد ساختم نتیجه هم در چهار تا خانه برود.

ghossein
چهارشنبه 05 آذر 1393, 20:21 عصر
سلام

برای اینکار شما باید وارد پنجره EditColumn بشید، ستونهای که می خواهید توی دیتا گرید نمایش داده بشه رو Add کنید و بعد در جلوی خصوصیت DataPropertyName نام ستون مورد نظرتون رو وارد کنید .
مثال اگه شما همچین کدی دارید و جدول برگشتی دارای دو ستون Genre , Count باشه :

var query = from m in dc.Movies
group m by m.Genre into g
select new { Genre = g.Key, Count = g.Count() };

DataGridView1.DataSource = query;


برای نمایش مثلا ستون Genre باید جلوی DataPropertyName بنویسید : Genre

bazikadeh
چهارشنبه 05 آذر 1393, 20:37 عصر
اینو میدونم ولی من هم میخوام فارسی باشه و هم اینکه چند کلمه ای باشه و اینکه روی فیلد ها مدیریت داشته باشم

ghossein
چهارشنبه 05 آذر 1393, 21:36 عصر
سلام
اگه می خواهید هدر ستون فارسی باشه خوب فارسی بنویسید :

GridViewProperties.Columns[0].HeaderText = "کــد";
GridViewProperties.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[0].DefaultCellStyle.ForeColor = Color.Red;
GridViewProperties.Columns[1].HeaderText = "نام و نام خــانوادگی";
GridViewProperties.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[2].HeaderText = "تـلفن";
GridViewProperties.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[3].HeaderText = "قیـمت کـل";
GridViewProperties.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[4].HeaderText = "تخــفیف";
GridViewProperties.Columns[4].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[5].HeaderText = "قـیمت به حـروف";
GridViewProperties.Columns[5].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[6].HeaderText = "تـاریخ";
GridViewProperties.Columns[6].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
GridViewProperties.Columns[7].HeaderText = "آدرس";

bazikadeh
پنج شنبه 06 آذر 1393, 18:51 عصر
نمیشه به صورت فیلدی قرار داد یعنی بگیم این مقدار اونجا قرار بگیره ؟