我有一個依賴屬性,我叫IsPromptShown
用戶控制:WPF觸發TextBox.Text不起作用
public static DependencyProperty IsPromptShownProperty = DependencyProperty.
Register("IsPromptShown", typeof(bool), typeof(AutoCompleteSearchBox), new
PropertyMetadata(true));
public bool IsPromptShown
{
get { return (bool)GetValue(IsPromptShownProperty); }
set { SetValue(IsPromptShownProperty, value); }
}
這自定義控件包含TextBox
。該文本框沒有分配給它的Text
財產的任何值:
<TextBox Name="_searchTextBox" Grid.Row="0" VerticalAlignment="Top"
GotFocus="SearchTextBox_GotFocus" LostFocus="SearchTextBox_LostFocus"
TextChanged="SearchTextBox_TextChanged"/>
現在我設置在託管窗口下面的觸發器:
<Trigger Property="IsPromptShown" Value="True">
<!--<Setter Property="FontStyle" Value="Italic"/>-->
<Setter Property="TextBox.Text" Value="Seek"/>
</Trigger>
的註釋行,設置FontStyle
的作品,但第二個設置TextBox.Text
沒有。我也一直試圖設置Foreground
屬性,那也失敗了。到底是怎麼回事?
你是如何在託管窗口中設置dataContext的?在文本框本身而不是窗口上設置觸發器 – makc
@makc _TextBox_不會看到僅在我的自定義控件級別上可見的_IsPromptShown_依賴項屬性。是否有能力爲內部文本框聲明依賴項屬性? –
定義內部文本框,我錯過了整個圖片...我猜測,但也許附加屬性將幫助 – makc