PDA

View Full Version : سوال: ایجاد datagridview هنگام اجرای برنامه



Iran58
پنج شنبه 21 مرداد 1395, 13:34 عصر
سلام
من داخل برنامه یک RadPageViewPage قرارداده ام که pageهای آن را با کد زیر بصورت انلاین می سازم

var names = new[] { "1", "2", "3" };
foreach (var name in names)
{
RadPageViewPage page = new RadPageViewPage();
page.Text = name;
this.radPageView1.Pages.Add(page);
}

حال می خواهم داخل هر page یک گرید ویو ایجاد کنم
چگونه باید این گرید ویورا ایجاد کنم
باتشکر

Iran58
شنبه 23 مرداد 1395, 07:39 صبح
سلام
دوستان من با کد زیر تونستم یک دیتاگرید ایجاد کنم
using System;using System.ComponentModel;
using System.Windows.Forms;


namespace WindowsFormsApplication9
{
public partial class Form4 : Form
{
public Form4()
{
InitializeComponent();
}
private DataGridView myNewGrid;
private void Form4_Load(object sender, EventArgs e)
{
myNewGrid = new DataGridView();
((ISupportInitialize)(myNewGrid)).BeginInit();
this.SuspendLayout();
myNewGrid.Parent = this;
myNewGrid.ColumnHeadersHeightSizeMode =DataGridViewColumnHeadersHeightSizeMode.AutoSize;
myNewGrid.Name = "myNewGrid";
myNewGrid.TabIndex = 0;
myNewGrid.ColumnHeadersVisible = true;
myNewGrid.RowHeadersVisible = true;
myNewGrid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
myNewGrid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCells;
((ISupportInitialize)(myNewGrid)).EndInit();
this.ResumeLayout(true);
myNewGrid.Visible = true;
var namesdg = new[] { "1", "2", "3" };
foreach (var name1 in namesdg)
{
myNewGrid.Columns.Add("ColumnName", name1);
}
}
}
}



اما سوال من اینه که این دیتاگرید را چگونه داخل یک تب RadPageViewPage ایجاد کنم
باتشکر

Iran58
یک شنبه 14 شهریور 1395, 08:13 صبح
سلام
من کد بالا را بصورت زیر تغییر دادم

private DataGridView myNewGrid;
private void radButton1_Click(object sender, EventArgs e)
{
var names = new[] { "a", "b", "c", "d", "e", "f" };
foreach (var name in names)
{
var page = new RadPageViewPage();
page.Text = name;
radPageView1.Pages.Add(page);
myNewGrid = new DataGridView();
((ISupportInitialize)(myNewGrid)).BeginInit();
SuspendLayout();
myNewGrid.Parent = radPageView1.SelectedPage;
myNewGrid.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
myNewGrid.Name = "dgView";
myNewGrid.TabIndex = 0;
myNewGrid.ColumnHeadersVisible = true;
myNewGrid.RowHeadersVisible = true;
myNewGrid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
myNewGrid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.DisplayedCells;
((ISupportInitialize)(myNewGrid)).EndInit();
this.ResumeLayout(true);
myNewGrid.Visible = true;
}
}

اما یک مشکلی که وجود داره
درخط

myNewGrid.Parent = radPageView1.SelectedPage;

همیشه
radPageView1.SelectedPage
همیشه برای اولین داده میباشد و تغییر نمیکند
برای حل این مشکل چکار باید کنم