PDA

View Full Version : عدم تغییر رنگ پسزمینه TextBox با افزودن متن



hadi vafaii
شنبه 03 بهمن 1394, 00:10 صبح
سلام چجوری میشه یه پروپرتیس واسه یوزر کنترل ایجاد کرد که مثلا اگه true بود یه کاری بکنه اگه نه کاره دیگه

Masoomeh.H
شنبه 03 بهمن 1394, 16:30 عصر
bool flag=false;
public check
{
get { return flag; }
set { flage = value;
if(flage==tru)
......
}


}

hadi vafaii
یک شنبه 04 بهمن 1394, 10:35 صبح
من اینجوریی نوشتم که اگه کاربر خواست چک کنه تکست باکسش خالیه true کنه وگرنه false

bool flag;
public bool chekempty
{
get
{
return flag;
}
set
{
flag = value;
if (flag == true)
{
if (textBox1.Text == string.Empty)
{
textBox1.SelectAll();
textBox1.BackColor = Color.Red;
}
else
textBox1.BackColor = Color.White;
}
}
}
اما وقتی true میکنه همیشه قرمز میشه

Mahmoud.Afrad
یک شنبه 04 بهمن 1394, 16:48 عصر
در رویداد textchanged هم باید چک کنی. شرط رو در یک متد بنویس و در هر دو جا فراخوانی کن

public partial class UserControl1 : UserControl
{
bool _flag;
public bool CheckEmpty
{
get { return _flag; }
set
{
_flag = value;
SetBackColor();
}
}
public UserControl1()
{
InitializeComponent();
textBox1.TextChanged += TextBox1_TextChanged;
}
private void TextBox1_TextChanged(object sender, EventArgs e)
{
SetBackColor();
}
private void SetBackColor()
{
if (_flag)
{
if (textBox1.Text == string.Empty)
{
textBox1.SelectAll();
textBox1.BackColor = Color.Red;
}
else
textBox1.BackColor = Color.White;
}
}
}
اگر هم از textbox ارثبری میکنی به اینصورت

public class CustomTextBox : TextBox
{
bool _flag;

public bool CheckEmpty
{
get { return _flag; }
set
{
_flag = value;
SetBackColor();
}
}

protected override void OnTextChanged(EventArgs e)
{
base.OnTextChanged(e);
SetBackColor();
}

private void SetBackColor()
{
if (_flag)
{
if (this.Text == string.Empty)
{
this.SelectAll();
this.BackColor = Color.Red;
}
else
this.BackColor = Color.White;
}
}
}

alexmcse
یک شنبه 04 بهمن 1394, 17:38 عصر
سلام

http://barnamenevis.org/showthread.php?516849-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-Property-%D8%A8%D8%B1%D8%A7%DB%8C-Component-%D8%A8%D8%A7-%D9%82%D8%A7%D8%A8%D9%84%DB%8C%D8%AA-%DA%AF%D8%B3%D8%AA%D8%B1%D8%B4-%D8%AF%D8%B1-%D8%B2%D9%85%D8%A7%D9%86-%D8%AF%DB%8C%D8%B2%D8%A7%DB%8C%D9%86%D8%8C-Expandable-Property