2011-09-27 21 views
6

मेरे पास WPF में टेम्पलेट कॉलम के साथ एक डाटाग्रिड है। ग्रिड में कॉलम के जोड़े केवल पढ़ने के लिए हैं, फोकस पर अन्य संपादन योग्य बन जाते हैं (लेबल, टेक्स्टबॉक्स, चेकबॉक्स और ऐसे दिखाई देने के बजाय)।डेटाग्रिड टैब नेविगेशन स्किप कॉलम

मैं जो हासिल करना चाहता हूं वह यह है कि जब मैं ग्रिड के कॉलम के माध्यम से टैबबिंग कर रहा हूं तो केवल कॉलम कॉलम छोड़ दिए जाते हैं।

कोई भी यह कैसे प्राप्त करने के बारे में जानता है?

धन्यवाद! व्लादन


नहीं, काम नहीं कर रहा :(

यहाँ पूरा सेल है ... KeyboardNavigation.IsTabStop और अकेले IsTabStop साथ यह कोशिश की ...

<DataGridTemplateColumn Header="{x:Static local:MainWindowResources.gasNameLabel}" Width="*" MinWidth="150" IsReadOnly="True"> 
    <DataGridTemplateColumn.CellTemplate> 
     <DataTemplate> 
      <ContentControl Content="{Binding Path=Name}" ContentTemplate="{StaticResource DataGridTextBoxView}" /> 
     </DataTemplate> 
    </DataGridTemplateColumn.CellTemplate> 
    <DataGridTemplateColumn.CellStyle> 
     <Style TargetType="{x:Type DataGridCell}"> 
      <Style.Triggers> 
       <Trigger Property="IsReadOnly" Value="true"> 
        <Setter Property="KeyboardNavigation.IsTabStop" Value="False"/> 
       </Trigger> 
      </Style.Triggers> 
     </Style> 
    </DataGridTemplateColumn.CellStyle> 
</DataGridTemplateColumn> 
+0

क्या आपने 'सक्षम 'संपत्ति या' फोकस करने योग्य 'संपत्ति की कोशिश की है। 'डेटाग्रिड' पर कभी भी कोशिश नहीं की लेकिन यह एक शॉट के लायक है। – CodingGorilla

उत्तर

10

काम नहीं किया ऐसा कुछ काम करेगा:

<DataGrid.Resources> 
    <Style TargetType="DataGridCell"> 
     <Style.Triggers> 
      <Trigger Property="IsReadOnly" Value="True"> 
       <Setter Property="IsTabStop" Value="False"/> 
      </Trigger> 
     </Style.Triggers> 
    </Style> 
</DataGrid.Resources> 
संबंधित मुद्दे