PDA

View Full Version : چند سوال در مورد TabControl



va2012
سه شنبه 05 اردیبهشت 1391, 11:57 صبح
سلام خدمت دوستان

چند تا سوال دارم ممنون میشم راهنمایی کنید.

1- من یک برنامه دارم که یک TabControl داره که هنگام اجرا با هر بار کلیک Button روی فرم - یک Tab جدید به TabControl اضافه میشه . حالا چطور میتونم بفهمم که هنگام اجرا کدوم Tab در حالت انتخاب هست که یک سری تنظیمات رو روی اون انجام بدم.

مثلا فرض کنید کاربر با 5 بار کلیک Button روی فرم 5 تا Tab ایجاد کرده و من میخوام هر تب از بین این 5 تب که انتخاب شده تنظیمات روی اون انجام بشه. از TabSelectedIndex استفاده کردم ولی نتیجه ای نداد.

2 - چطور میشه با کلیک روی متن هر Tab نام اون تب به حالت انتخاب دربیاد و نام جدید رو تایپ کنیم و این نام جدید در برنامه ذخیره بشه؟

3- من از دستور زیر برای ایجاد Table در دیتابیس استفاده می کنم. حالا چطور میشه تعداد ستون های هر جدول رو از کاربر دریافت کرد؟
مثلا این دستور همیشه یک جدول با 6 ستون ایجاد می کنه ولی من میخوام این تعداد ستون رو بشه از کاربر دریافت کرد.

string StringSql = @"CREATE TABLE TableName (1 Text,2 Text,3 Text,4 Text,5 Text,6 Text)";


OleDbCommand command = new OleDbCommand(StringSql, connection);

mazaher5723
سه شنبه 05 اردیبهشت 1391, 12:41 عصر
سلام دوست عزیز
جواب سوال 1:

tabControl1.SelectedTab.Text;

mazaher5723
سه شنبه 05 اردیبهشت 1391, 12:57 عصر
جواب سوال 3:
اینم تابعی که به هر تعداد ستون بخوای تبدیل کنید
string InsTbl(int count)
{
string StringSql = @"CREATE TABLE TableName (";
string Col = "";
for (int i = 0; i <= count; i++)
{
Col = Col + i.ToString() + "Coulmn" + ",";

}
Col = Col +count.ToString()+ "Colmn";
StringSql = StringSql + Col+")";
return StringSql;
}

mazaher5723
سه شنبه 05 اردیبهشت 1391, 13:00 عصر
دوست عزیز
سوال شماره 2 رو فکر نکنم بشه با این کنترول انجامش داد.یعنی من ندیدم

موفق باشید و پیروز
مظاهر

va2012
سه شنبه 05 اردیبهشت 1391, 13:11 عصر
دوست عزیز ممنون از راهنماییت ولی مورد اول رو که گفتی نفهمیدم. یعنی شاید من کامل توضیح ندام. فرم به این شکل هست که وقتی روی فرم مثلا 5 تا Tab ایجاد میشه - یک فرم مجزا وجود داره که دارای یک سری تکست باکس هست و وقتی هر Tab درحالت انتخاب باشه باید اطلاعات این تکست باکس ها فقط داخل اون Tab وارد بشه و وقتی Tab تغییر کرد اطلاعات داخل Tab جدید ثبت بشه . حالا من میخوام بدونم چطور دستور شرطی بنویسم که چک کنه کدوم Tab در حالت انتخاب هست و بعد عمل ثبت این اطلاعات رو داخل همون Tab انجام بده.

Mahmoud.Afrad
سه شنبه 05 اردیبهشت 1391, 14:04 عصر
خوب با
tabControl1.SelectedTab.Text; میتونید بفهمید کدوم تب انتخاب شده.
با این هم میشه:
tabControl1.SelectedIndex که اندیس تب انتخاب شده بدست میاد.

va2012
سه شنبه 05 اردیبهشت 1391, 16:51 عصر
مرسی . در مورد کدهای پست آخر متوجه شدم باید چه کار کنم ولی در مورد اون تابعی که گفتین یکم توضیح بدین چطوری کار میکنه چون من استفاده کردم ولی ارور میده : (Syntax Error in Field definition)

فکر کنم داخل کد تابع اون "Coulmn" و "Colmn" باید یکی باشن. درسته؟