我正在尝试在SortedList中添加三个Textbox,然后检查它们是否为空以及它们是否相等。如果这是假的,则禁用我的确定按钮。
var entries = new SortedList<string, int>();
foreach (var textBox in new[] {
this.txbGroupSeparator,
this.txbDecimalSeparator,
this.txbCellDelimiter
})
//this.okButton.Enabled = !string.IsNullOrEmpty(this.txbCellDelimiter.Text) &&
// !string.IsNullOrEmpty(this.txbDecimalSeparator.Text) &&
// !string.IsNullOrEmpty(this.txbGroupSeparator.Text) &&
// !(this.txbCellDelimiter.Text == this.txbDecimalSeparator.Text) &&
// !(this.txbCellDelimiter.Text == this.txbGroupSeparator.Text) &&
// !(this.txbDecimalSeparator.Text == this.txbGroupSeparator.Text);
到目前为止,这是我的代码......
答案 0 :(得分:0)
你的意思是这样的:
var entries = new SortedList<string, int>
{
{ txbGroupSeparator.Text, 0 },
{ txbDecimalSeparator.Text, 1 },
{ txbCellDelimiter.Text, 2 }
};
okButton.Enabled = txbGroupSeparator.Text == txbDecimalSeparator.Text &&
txbDecimalSeparator.Text == txbCellDelimiter.Text &&
!txbCellDelimiter.Text.IsNullOrEmpty();
首先使用值声明并初始化SortedList
,然后启用/禁用按钮。
答案 1 :(得分:0)
var lstTextValues = new SortedList<string, string>();
lstTextValues.Add(this.txbGroupSeparator.Name,this.txbGroupSeparator.Text);
lstTextValues.Add(this.txbDecimalSeparator.Name,this.txbDecimalSeparator.Text);
lstTextValues.Add(this.txbCellDelimiter.Name,this.txbCellDelimiter.Text);
this.okButton.Enabled = true;
if(lstTextValues.Exists(e => string.IsNullOrEmpty(e.Value)))
{
this.okButton.Enabled = false;
}
foreach (KeyValuePair<string, int> srtlst in lstTextValues)
{
if (lstTextValues.Count(e => e.Value == srtlst.Value) > 1)
{
this.okButton.Enabled = false;
}
}