我有一系列可以在其中保存文本框的選項卡。某些選項卡也有一個包含滾動視圖內的文本框的控件。我正在嘗試遍歷標籤並清除文本框的內容。清除控件中的文本框
我打算用這樣的:
foreach(TabItem item in Tabs.Items)
{
ClearTextBoxes(this);
}
然後我用這清晰的文本框:
TextBox tb = obj as TextBox;
if (tb != null)
tb.Text = "";
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++)
{
ClearTextBoxes(VisualTreeHelper.GetChild(obj, i));
}
,目前只清理其餘的第一選項卡和無。
任何想法?
+1 - 我有很多問題與TabControl,直到我意識到只有當前選中的Tab有控件的加載。 – Rachel
我將其更改爲ClearTextBoxes(Tabs),並且它適用於當前選項卡......在這種情況下,我將如何使用LogicalTreeHelper ......我並不是那麼熟悉它。 – Woundedbear
@Woundedbear:以下鏈接包含一個輔助方法,它在邏輯樹和可視樹中查找。有了這個,你會發現所有的元素。我沒有測試過,但看起來沒問題。 http://www.hardcodet.net/2009/06/finding-elements-in-wpf-tree-both-ways如果我的回答對你有所幫助,請點擊答案的投票按鈕下方的複選標記,接受它。 – HCL