PDA

View Full Version : تعیین محل قرار گیری جدول تولید شده



mjt10063
یک شنبه 14 مهر 1392, 18:32 عصر
با سلام
دوستان من به وسیله کد زیر


private void GenerateTable(int rowsCount)
{
//Creat the Table and Add it to the Page
Table table = new Table();
table.ID = "Table1";
Page.Form.Controls.Add(table);
//The number of Columns to be generated
const int colsCount = 7;//You can changed the value of 3 based on you requirements
// Now iterate through the table and add your controls
for (int i = 0; i < rowsCount; i++)
{
TableRow row = new TableRow();
for (int j = 0; j < colsCount; j++)
{
TableCell cell = new TableCell();
TextBox tb = new TextBox();
// Set a unique ID for each TextBox added
tb.ID = "TextBoxRow_" + i + "Col_" + j;
// Add the control to the TableCell
cell.Controls.Add(tb);
// Add the TableCell to the TableRow
row.Cells.Add(cell);
}
// And finally, add the TableRow to the Table
table.Rows.Add(row);
}
//Set Previous Data on PostBacks
SetPreviousData(rowsCount, colsCount);
//Sore the current Rows Count in ViewState
rowsCount++;
ViewState["RowsCount"] = rowsCount;
}


میام جدول به صورت انلاین تولید میکنم
و با این کد نمایشش میدم

GenerateTable(numOfRows);

ولی این جدول بد جایی لود میشه و من میخوام که توی قسمتی از صفحه جای که من میخوام
و پنل قرار دادم لود بشه باید چه کار کنم
با تشکر از همه دوستان

mjt10063
یک شنبه 14 مهر 1392, 19:43 عصر
دوستان خواهشن کمک کنید
و یا بگید باید دنبال چی بگردم

mahdioo12194
یک شنبه 14 مهر 1392, 20:50 عصر
هر جا که نوشتی GenerateTable(numOfRows); رو همونجا لود میشه دیگه ؟!!

anvar
یک شنبه 14 مهر 1392, 20:52 عصر
خوب به جای اینکه به فرم اضافه اش کنی به خود پنل اضافه اش کن
panel.controls.add(mytable)

mahdioo12194
یک شنبه 14 مهر 1392, 21:06 عصر
با این کد صفحه پست بک میشه درسته؟ برای دریافت مقادیر چکار کردی؟

mjt10063
دوشنبه 15 مهر 1392, 07:28 صبح
خوب به جای اینکه به فرم اضافه اش کنی به خود پنل اضافه اش کن
panel.controls.add(mytable)

شما این طریق امتحان کردید
جواب نمیده؟؟
درسته ؟؟


با این کد صفحه پست بک میشه درسته؟ برای دریافت مقادیر چکار کردی؟

از طریق کد زیر
private void SetPreviousData(int rowsCount, int colsCount)
{
Table table = (Table)Page.FindControl("Table1");

if (table != null)
{
for (int i = 0; i < rowsCount; i++)
{
for (int j = 0; j < colsCount; j++)
{
//Extracting the Dynamic Controls from the Table
TextBox tb = (TextBox)table.Rows[i].Cells[j].FindControl("TextBoxRow_" + i + "Col_" + j);
//Use Request objects for getting the previous data of the dynamic textbox
tb.Text = Request.Form["TextBoxRow_" + i + "Col_" + j];
Label1.Text += tb.Text = Request.Form["TextBoxRow_" + i + "Col_" + j];
}
}
}
}

میتونی اطلاعات رو دریافت کنی
اطلاعات تک تک تکست باکس ها

خیلی کدش بهتر از کد های جاوا و جی کوئری هست

mahdioo12194
دوشنبه 15 مهر 1392, 09:10 صبح
شما مثلا یه دیو درست کن بعد حالا فرم یا پنل یا هر چیز دیگه رو درون آن قرار بده و جدول رو به اون فرم یا پنل اضافه کن قاعدتا باید جواب بده؟!! اگر مشکلی بود پروزه رو ضمیمه کن !! در ضمن این کدهای دریافت رو کجا نوشتی؟؟

mjt10063
دوشنبه 15 مهر 1392, 09:21 صبح
جدول به صورت آنلاین داره تولید میشه
با کلیک رو باتن
و با این کد هم نمایش داده میشه
GenerateTable(numOfRows);

من چطوری به پنل اضافه اش کنم ؟؟
111578

anvar
دوشنبه 15 مهر 1392, 09:39 صبح
یه کنترل پنل به صفحه ات اضافه کن (حتما در تگ form باشه). استایلش هم با cssclass درست کن.

حالا در رویداد ساخت جدولت , حدول رو به مجموعه کنترل های پنل اضافه کن . همین - تست هم کردم جواب میده - در کد زیر فقط خط سوم


Table table = new Table();

table.ID = "Table1";


Panel1.Controls.Add(table);

mahdioo12194
دوشنبه 15 مهر 1392, 10:06 صبح
دکمه رو بزار تو آپدیت پنل که رفرش نشه!!

mjt10063
دوشنبه 15 مهر 1392, 17:01 عصر
چطوری باید بزارمش توی آپدیت پنل

fakhravari
دوشنبه 15 مهر 1392, 17:51 عصر
کل دکمه با پنل بزار دیگه. دکه ای که پستبک میکنه