2013-04-12 2 views
5

मेरे पास एक WPF ग्रिडव्यू में दो टेक्स्टबॉक्स हैं। दूसरा दृश्य दृश्य मॉडल (GetNoteTwoVisibility) पर किसी विधि का उपयोग करके छिपा हुआ है यदि प्रदर्शित करने के लिए कोई पाठ नहीं है - कोई समस्या नहीं है। इस मामले में हालांकि मैं दोनों कॉलम का उपयोग करने के लिए पहले टेक्स्ट बॉक्स के कॉलम अवधि को बदलना चाहता हूं। मैंने 'GetNoteOneColumnSpan' विधि जोड़ने (एक int लौटने) को जोड़ने का प्रयास किया है लेकिन यह काम नहीं करता है।डब्ल्यूपीएफ ग्रिड के लिए बाध्यकारी। कॉलमस्पेन

<TextBox Name="Note1" Grid.Column="0" Text="{Binding NotesView.NoteOne}" Grid.ColumnSpan="{Binding NotesView.GetNoteColumnSpan}" /> 
<TextBox Name="Note2" Grid.Column="1" Text="{Binding NotesView.NoteTwo}" Visibility="{Binding NotesView.GetNoteTwoVisibility}" /> 

क्या ऐसा करने का कोई तरीका है? धन्यवाद

उत्तर

7

आपको Grid.ColumnSpan के लिए अन्य बाध्यकारी संपत्ति की आवश्यकता नहीं है। आप कुछ ऐसा करने की कोशिश कर सकते हैं:

<TextBox Name="Note1" 
      Grid.Column="0" 
      Text="{Binding NotesView.NoteOne}"> 
    <TextBox.Style> 
    <Style TargetType="{x:Type TextBox}"> 
     <Setter Property="Grid.ColumnSpan" 
       Value="1" /> 
     <Style.Triggers> 
     <DataTrigger Binding="{Binding NotesView.GetNoteTwoVisibility}" 
         Value="False"> 
      <Setter Property="Grid.ColumnSpan" 
        Value="2" /> 
     </DataTrigger> 
     </Style.Triggers> 
    </Style> 
    </TextBox.Style> 
</TextBox> 
<TextBox Name="Note2" 
      Grid.Column="1" 
      Text="{Binding NotesView.NoteTwo}" 
      Visibility="{Binding NotesView.GetNoteTwoVisibility}" /> 
+0

जो पूरी तरह से काम करता है (एक बार मुझे याद होगा कि मेरी दृश्यता विधि ने एक दृश्यता enum लौटाया है, न कि बूल!), धन्यवाद। – Nick

+0

आपका स्वागत है। मुझे उम्मीद है कि आपके पास ViewModel में एक बूल वैल्यू का उपयोग करने और xaml में कनवर्टर का उपयोग करने के बजाय आपके व्यू मॉडेल में System.Windows.Visibility Property रखने का कोई कारण है। – Viv

+0

कोई कारण नहीं, अनुमान लगाया गया है कि ऐप कैसे लिखा गया था, कन्वर्टर्स के उपयोग में दिखेगा, हालांकि यह बेहतर अभ्यास है, धन्यवाद – Nick

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