मैं Background
में कुछ वॉटरमार्क टेक्स्ट के साथ एक साधारण TextBox
सेट करने की कोशिश कर रहा हूं। मेरा कोड Philip Patrick's blog से उदाहरण पर आधारित है।स्टाइल में WPF बाध्यकारी
मैं इसे ट्विक करने की कोशिश कर रहा हूं ताकि पृष्ठभूमि में प्रदर्शित पाठ TextBox
पर ToolTip
संपत्ति से पुनर्प्राप्त हो।
वर्तमान में यह काम करता है:
<TextBox ToolTip="Type a name here...">
<TextBox.Background>
<VisualBrush TileMode="None" Opacity="0.4" Stretch="None" AlignmentX="Left">
<VisualBrush.Visual>
<TextBlock FontStyle="Italic" Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TextBox}}, Path=ToolTip}"/>
</VisualBrush.Visual>
</VisualBrush>
</TextBox.Background>
</TextBox>
TextBox
की Background
में ToolTip
पाठ प्रदर्शित करता है।
लेकिन अगर मैं एक संसाधन शैली के लिए बाहर ले जाने के कोड का हिस्सा बाध्यकारी नहीं रह TextBox
से ToolTip
की जानकारी हो जाता है:
<Grid>
<Grid.Resources>
<Style x:Key="WatermarkBackground" TargetType="{x:Type TextBox}">
<Setter Property="Background">
<Setter.Value>
<VisualBrush TileMode="None" Opacity="0.4" Stretch="None" AlignmentX="Left">
<VisualBrush.Visual>
<TextBlock FontStyle="Italic" Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TextBox}}, Path=ToolTip}"/>
</VisualBrush.Visual>
</VisualBrush>
</Setter.Value>
</Setter>
</Style>
</Grid.Resources>
<TextBox ToolTip="Type your name here..." Style="{StaticResource WatermarkBackground}"/>
किसी भी सुझाव के यहाँ?
आप किसी टेम्पलेट के बजाय एक शैली की ताकि आप {बाइंडिंग RelativeSource = {RelativeSource TemplatedParent}, पथ = ToolTip} उपयोग कर सकते हैं का उपयोग कर सकते हैं? –