亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何顯示網格中的特定文本框并隱藏所有其他文本框?

如何顯示網格中的特定文本框并隱藏所有其他文本框?

C#
慕斯王 2023-08-20 10:02:11
我目前正在開發 C# WPF 應用程序。我有一個網格,網格中有近 10 個文本框,根據客戶的要求,我必須向他展示文本框。我當前正在從文件中讀取一個變量,假設 4 并向他顯示 10 個文本框中的 4 個文本框,或者如果我在文本文件中寫入 5 個文本框,我的代碼應該向他顯示 10 個文本框中的 5 個文本框。我怎樣才能在我的代碼中實現這種現象
查看完整描述

1 回答

?
牧羊人nacy

TA貢獻1862條經驗 獲得超7個贊

如果您的文本框都共享一個公共父容器(即網格),那么迭代它們就非常容易。XAML 可能看起來像這樣:


<Grid Name="textBoxContainer">

    <!-- row, column definitions omitted -->

    <TextBox />

    <TextBox />

    <TextBox />

    <!-- etc... -->

</Grid>

...然后在代碼隱藏文件中,您需要像這樣迭代這些文本框:


int showBoxCount = 4; // this number gets loaded from your file elsewhere

foreach (var textBox in textBoxContainer.Children.OfType<TextBox>()) {

    if (showBoxCount > 0)

        textBox.Visibility = Visibility.Visible;

    else

        textBox.Visibility = Visibility.Collapsed;

    showBoxCount--;

}

如果文本框不共享公共父容器,那么您需要為每個文本框指定一個名稱,然后在代碼隱藏文件中手動將它們放入數組中。


XAML:


<TextBox Name="txt1" />

<TextBox Name="txt2" />

<TextBox Name="txt3" />

<!-- etc... -->

隱藏代碼:


var textBoxes = new TextBox[] { txt1, txt2, txt3, etc... };

int showBoxCount = 4; // this number gets loaded from your file elsewhere

foreach (var textBox in textBoxes) {

    if (showBoxCount > 0)

        textBox.Visibility = Visibility.Visible;

    else

        textBox.Visibility = Visibility.Collapsed;

    showBoxCount--;

}


查看完整回答
反對 回復 2023-08-20
  • 1 回答
  • 0 關注
  • 114 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號