public partial class ModulusForm : Form
{
public double nje;
public double dy;
public double pergjigja;
public double rezultati;
public ModulusForm()
{
InitializeComponent();
Button btn = new Button();
btn.Click += new EventHandler(butoniGjenero_Click);
}
private void butoniPerfundo_Click(object sender, EventArgs e)
{
this.Close();
}
private void butoniGjenero_Click(object sender, EventArgs e)
{
Random random = new Random();
nje = random.Next(1, 100);
dy = random.Next(1, 100);
if (nje > dy)
{ textboxPyetja.Text = "X = " + nje + " " + "dhe" + " " + "Y = " + dy; }
else if (nje > dy)
{
nje = random.Next(1, 100);
dy = random.Next(1, 100);
}
rezultati = nje / dy;
}
private void butoniPastro_Click(object sender, EventArgs e)
{
textboxPyetja.Clear();
textboxPergjigja.Clear();
textboxPergjigjaSakt.Clear();
}
private void butoniVerteto_Click(object sender, EventArgs e)
{
try
{
pergjigja = double.Parse(textboxPergjigja.Text);
}
catch
{
var informim = MessageBox.Show("Rishiko fushat!", "Verejtje", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
if (textboxPergjigja.Text == "")
{
//nothin' baby
}
else
{
if (textboxPyetja.Text == "")
{
var informim = MessageBox.Show("Fusha e pyetjes eshte null!", "Verejtje", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
if (pergjigja == rezultati)
{
textboxPergjigjaSakt.Text = "Pergjigja eshte e sakte";
}
else
{
textboxPergjigjaSakt.Text = "Gabim." + " " + "Pergjigja e sakte eshte: " + "" + rezultati;
}
comboboxVargu.Items.Add(nje + " / " + dy + " = " + rezultati);
}
}
}
}
}
在TextBox的TextChanged事件中处理它。(在Design中双击textbox控件,它将自动为您创建文本更改事件)。
private void textboxPyetja_OnTextChanged(..blah blah)
{
if(String.IsNullOrWhitespace(txtTargetTextbox.Text)
{
//disable your control
}
else
{
//enable your control
}
}
4年后编辑-出于某种原因:这里有一个单行版本,有些人只是喜欢他们。。。
private void textboxPyetja_OnTextChanged(..blah blah)
{
btnILoveButtons.Enabled = string.IsNullOrWhitespace(txtTargetTextbox.Text);
{
private void YourTextBox_TextChanged(object sender, EventArgs e)
{
if (String.IsNullOrEmpty(YourTextBox.Text))
YourButton.Enabled = false;
else
YourButton.Enabled = true;
}
感谢@Cody Gray已经提出了这一点;我刚刚扩展了它,所以您可以看到如何实现它以及它是如何工作的
概述
当您的textboxPergjigja.Text
的文本发生更改时,您可以连接事件处理程序。
在您创建的处理程序中,您可以使用字符串.IsNullOrWhiteSpace()
检查来设置按钮是否应启用。
首先:
在表单的构造函数中,订阅textboxPergjigja.Text
文本框的TextChanged
事件。
public ModulusForm()
{
InitializeComponent();
Button btn = new Button();
btn.Click += new EventHandler(butoniGjenero_Click);
// Add the subscription to the event:
textboxPergjigja.TextChanged += textboxPergjigja_TextChanged;
}
下一步:
添加与该事件的正确委托签名匹配的处理程序。
这样地:
public textboxPergjigja_TextChanged(object sender, TextChangedEventArgs e)
{
// If the text box is not "empty", it will be enabled;
// If the text is "empty", it will be disabled.
butoniVerteto.Enabled = !string.IsNullOrWhiteSpace(textBoxPergjigja.Text);
}
这样,每当
textBoxPergjigja
文本框中的文本发生更改时;评估将运行,您的按钮将始终正确启用/禁用。
其他信息
您也可以使用textBox.Text.IsNullOrEmpty()
,它仍然可以工作-正如@Cody建议的那样
我使用了
string.IsNullOrWhiteSpace()
,而不是textBox.Text.IsNullOrEmpty()
,原因如下:
.IsNullOrEmpty()
方法仅检查textBox.Text
是否为null
或字符总数是否等于0
这可能带来的问题是,如果用户只在文本框中输入一个空格,它就不再是
空的
或空的
;因此,此检查将返回true
。如果程序逻辑要求在文本框中输入实际值,则此逻辑可能存在缺陷。
另一方面,string.IsNullOrWhiteSpace()
检查将检查3个条件-如果输入的string
为null
,为空且仅包含空格字符(空格、换行符等)
我希望这能给你们带来一点额外的信息,让你们对未来做出明智的决定。
我想禁用按钮,直到文本框中有文本。我怎么做?我是初学者,我什么都不知道,所以我应该添加一个代码就好了。我的代码: 私有无效按钮1\u单击(对象发送者,事件参数e){
问题内容: 我是React JavaScript的新手。我试图在输入字段为空时禁用按钮。React的最佳方法是什么? 我正在执行以下操作: 这样对吗? 这不仅仅是动态属性的复制,因为我也很好奇要从一个元素到另一个元素传输/检查数据。 问题答案: 您需要将输入的当前值保持在状态中(或通过回调函数或sideways或 _< 此处是您应用的状态管理解决方案>_将其值更改传递给父级,以便最终将其传递回您的
我有一个文本框,它是使用简单的禁用html标记禁用的。我需要在单击启用按钮时启用它,再次需要在单击禁用按钮时禁用它。下面是代码-
我正在创建复选框listview,下面是 它的工作but for循环是check1是falseexecute。但是数组列表的最后值为true执行 现在我想要arraylist复选框是获取“false”按钮是启用的。或“true”获取按钮被禁用如何编写条件帮助我
问题内容: 如果字段不正确,我想防止用户单击“注册”按钮。部分原因是必须填写某些字段。但条件开始变得有点长: 我该如何简化呢? 问题答案: 我认为您需要为表单内的输入字段提供属性,因此在表单中填写字段之前将是无效的。同样,您也可以在输入中提供其他验证属性。 例:-
如果电话号码的长度小于11,我希望显示一个报警对话框或禁用提交按钮。 下面是用户输入数字的格式化文本字段的代码: 检查条件的代码是: 代码基本上检查phoneStr的长度是否小于11。如果是,它应该弹出一个对话框,但是.length()方法给出12作为输出,即使文本字段为空。下面的语句输出12。有没有其他方法可以检查这种情况。