2013-02-20 50 views
7

के माध्यम से बाल संपत्ति के लिए बाध्यकारी मेरे पास एक ऐसा एप्लिकेशन है जो मुझे एप्लिकेशन-थीम को एक RessourceDictionary के माध्यम से बदलने का विकल्प देता है, जिसका अर्थ है कि मैं केवल शुद्ध एक्सएएमएल का उपयोग कर सकता हूं।डब्लूपीएफ स्टाइल: एलिमेंटनाम

अब, मैं जो करना चाहता हूं वह एक डॉकपैनल को छुपाता है, जिसमें एलिमेंटनाम नहीं है, लेकिन इसमें एक एक्स: नाम संपत्ति वाला बच्चा है।

<Style TargetType="DockPanel"> 
     <Setter Property="Visibility" Value="{Binding RelativeSource={RelativeSource Self}, Path=Child.Visibility}"/> 
</Style> 
इस संहिता मैं DockPanel, के पहले बच्चे की हो रही है, लेकिन मैं विशिष्ट बाल जो एक अनूठा ElementName है करने के लिए मूल्य बाध्य करने के लिए चाहते हैं के साथ

इसलिए प्रत्येक डॉकपैन गायब नहीं होता है, केवल वह व्यक्ति जिसके पास चाइल्ड ऑफ टाइप है। "MyTextBox" के एलिमेंटनाम के साथ "टेक्स्टबॉक्स"।

किसी के पास कोई विचार है कि यह कैसे करें? धन्यवाद ;-)

उत्तर

12

यह काम कर रहा है डॉकपैनल के पास सीमा के रूप में सीमा है और इस संहिता के साथ मैं इस सीमा के दृश्य को छिपाने के लिए सेट कर सकता हूं!

<Style TargetType="Border"> 
     <Style.Triggers> 
      <DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=Child.Children[2].Name}" 
         Value="SearchTextBox"> 
       <Setter Property="Visibility" Value="Hidden"/> 
      </DataTrigger> 
     </Style.Triggers> 
    </Style> 

संभावित सुधार: अनुक्रमणिका प्रति पाठ बॉक्स का संदर्भ नहीं है, बच्चे के माध्यम से पुनरावृति ...

संबंधित मुद्दे