繁体   English   中英

用C#上的相同输入重新更改控件属性(在这种情况下,为按钮)

[英]re-change a control properties with same input on C# (In this case,button)

我不知道这是否是关于C#的愚蠢,愚蠢的问题,因为我对此很陌生

我有此代码的控件 (在此按钮中)

private void A19_Click(object sender, EventArgs e)
{
   A19.Text="X";
}

我要问的是如何在单击它时将其Text属性更改为其他文本或返回其先前的值?

有任何想法吗 ?

(Visual Studio 2012,Windows窗体,使用.NET Framework 4)

谢谢。

在表单类中创建3个私有成员变量

例如:

string _currentString = "X";
string _previousString = string.Empty;
bool _state = true;

然后在您的点击事件处理程序中:

if(_state)
{
    A19.Text = _currentString;
}
else
{
    A19.Text = _previousString;
}

// Or A19.Text = _state ? _currentString : _previousString

_state = !_state;

每当更改_currentString :确保在设置_previousString = _currentString之前先设置_previousString = _currentString _currentString

要在两个值之间切换,请添加一个布尔值。

private bool displayOriginalText = false;
private void A19_Click(object sender, EventArgs e)
{
   if(displayOriginalText)
      A19.Text="X";
   else
      A19.Text="Y";
   displayOriginalText = !displayOriginalText;
}

切换多个

private List<string> words = new List<string> {"first", "second"};
private uint currentIndex = 0;
private void A19_Click(object sender, EventArgs e)
{
   A19.Text=words[currentIndex % words.Count];
   currentIndex++;       
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM