مشکل در پاس دادن مقدار به ValueMember
سلام
من داده را در جدول بصورت bigintذخیره کرده ام
ومی خواهم آنرا به combox نمایش دهم اما با آنکه تبدیل می کنم باز داده را بصورت null نمایش می دهد
radDropDownList1.ValueMember = Convert.ToInt32(x);
در کد بالا مثلا برای x مقدار 5400از جدول خوانده می شود ولی برای ValueMemberمقدار nullبجای 5400نمایش داده می شود
کد را چگونه باید اصلاح کنم
نقل قول: مشکل در پاس دادن مقدار به ValueMember
با سلام
radDropDownList1.ValueMember = Convert.ToInt32(x);
مطمئنید از این کد استفاده میکنین؟! این باید خطا بده. ValueMember در کمبوباکس یک مقدار srtring مییگره نه مقدار int.
در ضمن اگه بازه اعداد سه رقم و یا چهار رقم هستش از int استفاده کن.مقدار ماکزیمم int:
int maxint = int.MaxValue;
یعنی :2147483647
هستش.
نقل قول: مشکل در پاس دادن مقدار به ValueMember
ببخشید
منظورم
این کد است
comboBox.SelectedValue = employee.OrgChartID.ToString();
سمت OrgChartID داده نمایش داده می شود مانند عدد2147483647 ولی SelectedValue مقدار Null پر می شود
نقل قول: مشکل در پاس دادن مقدار به ValueMember
comboBox.SelectedValue
یعنی مقداری را که کاربر در کمبوباکس انتخاب کرده است بررسی میکند.
شما کمبوبکس رو باز میکنین و مقداری را انتخاب میکنین . اگر برای این مقدار، شرط گذاشته باشین که شرط شما اجرا میشه. والا چیزی اجرا نمیشه.
میخواهید به comboBox.SelectedValue مقدار بدید و comboBox.ValueMember مقدار بگیره؟!!
منظورتون را واضح تر بیان کنید میخواهید چکار کنید ؟
نقل قول: مشکل در پاس دادن مقدار به ValueMember
باسلام
من کموباکس را باکدزیر پرکرده ام
public void SetComboBoxValue()
{
Dictionary<string, int> TypeMembership = new Dictionary<string, int>
{
{"موظف",1},
{"غیرموظف", 2}
};
cboTypeMembership.DataSource = TypeMembership;
cboTypeMembership.DisplayMember = "Key";
cboTypeMembership.ValueMember = "Value";
}
و متد زیر را نوشته ام
public int TypeMembershipBoardOfDirecotors
{
get { return Convert.ToInt32(cboTypeMembership.SelectedValue); }
set
{
cboTypeMembership.SelectedValue = value;
}
}
حال با کد زیر کموباکس را از دیتاگرید پر می کنم
frm.TypeMembershipBoardOfDirecotors = Convert.ToInt32(dgViewDirectorate.CurrentRow.Cells["TypeMembership_Fk"].Value);
که در این حالت Value=1 اما مقدار TypeMembershipBoardOfDirecotors برابر صفر نمایش داده می شود
کد من کجاش مورد دارد که مقدار TypeMembershipBoardOfDirecotors برابر Value ست نمی شود
باتشکر
نقل قول: مشکل در پاس دادن مقدار به ValueMember
مطمئن شو سلول دیتاگرید مقدار داشته باشه (null نباشه)
به پراپرتی TypeMembershipBoardOfDirecotors مقدار عددی بده ببین عمل میکنه یا نه.
دیکشنری رو هم باید اصلاح کنی. value همون چیزی هست که باید نمایش داده بشه و key برای شناسایی و دسترسی هست.
public void SetComboBoxValue()
{
Dictionary<int, string> TypeMembership = new Dictionary<int, string>
{
{1, "موظف"},
{2, "غیرموظف"}
};
cboTypeMembership.DataSource = TypeMembership.ToList();
cboTypeMembership.DisplayMember = "value";
cboTypeMembership.ValueMember = "key";
}
نقل قول: مشکل در پاس دادن مقدار به ValueMember
باسلام
نقل قول:
به پراپرتی TypeMembershipBoardOfDirecotors مقدار عددی بده ببین عمل میکنه یا نه.
مقدار دستی 2 دادم اما بازهم جواب 0 بود
در ضمن نوع داده در بانک هم int است
نقل قول:
دیکشنری رو هم باید اصلاح کنی
چگونه باید اصلاح کنم
باتشکر
نقل قول: مشکل در پاس دادن مقدار به ValueMember
توی پست قبلیم گذاشتم دیگه.
نقل قول: مشکل در پاس دادن مقدار به ValueMember
بازهم همان مقدار صفر را بر می گرداند
نقل قول: مشکل در پاس دادن مقدار به ValueMember
سلام
مشکل حل شد
با قراردادن کدSetComboBoxValue()
در
public frmCompany()
{
SetComboBoxValue();
InitializeComponent();
}