PDA

View Full Version : سوال: انتخاب دو آيتم از كمبوباكسي كه توسط تابع پر مي شود



rana-writes
شنبه 20 اسفند 1390, 00:01 صبح
سلام
من يه كمبوباكس دارم توي فرمم كه با ديتاتيبل پرش ميكنم


private void FillComboName()
{
try
{
LoginDataAccess.dt = new DataTable();
GHDataAccess.ShowPersonalNameCombo();
CmbName.DataSource = LoginDataAccess.dt;

CmbName.DisplayMember = "Name";
CmbName.ValueMember = "PersonalId";

CmbName.SelectedIndex = -1;

}
catch (Exception)
{
LblMsg.Text = "خطا در بررسي امكانات كاربري، لطفا دوباره سعي كنيد";
}
}

اين هم كد كلاسيه كه ازش استفاده ميكنم:


public static void ShowPersonalNameCombo()
{
using (SqlConnection connection = Connection.ConnectToFix())
{
SqlCommand command = new SqlCommand("Fix_ShowPersonalName", connection);
SqlDataAdapter DataAdapter = new SqlDataAdapter(command);
DataAdapter.Fill(LoginDataAccess.dt);
}
}


اين كمبو اسامي پرسنل رو توي فرم نمايش ميده و از PersonalId استفاده ميكنم.
حالا اگه بخوام توي يه تكست باكس، نام پرسنل رو هم نشون بدم، بايد چكار كنم؟
اين خط كد


PersonalId = Convert.ToInt32(CmbName.SelectedValue.ToString());

فقط PersonalId رو برميگردونه و وقتي از


TxtPerName.Text = CmbName.SelectedItem.ToString();

استفاده ميكنم، متن تكست باكس با System.DataRow پر ميشه
ممنون ميشم راهنماييم كنين.

ehsan_starlight
شنبه 20 اسفند 1390, 08:32 صبح
می تونی از Combo Checkbox استفاده کنی یعنی یه کومبوباکس که داخلش آیتم های Checkbox هست...

rana-writes
شنبه 20 اسفند 1390, 12:36 عصر
سلام
ممنون از راهنماييتون
ولي ظاهرا منظور منو بد متوجه شدين
ميخوام توي كمبو، فقط نام پرسنل ديده بشه كه اون رو با تابع از توي ديتابيس پر ميكنم، منتهي وقتي يه آيتم انتخاب شد بتونم هم دسترسي داشته باشم به نامش كه ديده ميشه، هم آي ديش كه با SelecteValue توي تابع پرش كردم

ممنون از راهنماييتون

AliSaeedi_v
شنبه 20 اسفند 1390, 13:05 عصر
سلام اطلاعات شما در کامبوباکس بایند میشن؟این دو خط آخر رو کجا مینویسین؟

rana-writes
شنبه 20 اسفند 1390, 14:13 عصر
سلام
بله با تابع fill كه اول تاپيكم نوشتم، دستي كمبوباكس رو پر ميكنم
اين دو خط آخر هم تو رويداد دكمه هام مي نويسم.