سؤال

I have a DataGrid with a few lines:

<DataGrid ItemsSource="{Binding mylist}" AutoGenerateColumns="False">
   <DataGrid.Columns>
        <DataGridTextColumn Width="*" Header="x" Binding="{Binding x,UpdateSourceTrigger=LostFocus}"></DataGridTextColumn>
        <DataGridTextColumn Width="*" Header="y" Binding="{Binding y,UpdateSourceTrigger=LostFocus}"></DataGridTextColumn>
   </DataGrid.Columns>
</DataGrid>

The DataGrid sitting as ElementHost in two winfrom:

In one window I want to hide a row, how can do this? (Priority to XAML).

هل كانت مفيدة؟

المحلول

Finally I solved it this way:

I created a property in ViewModel

    private bool _isVisible=true;

    public bool IsVisible
    {
        get { return _isVisible; }
        set
        {
            _isVisible= value;
            NotifyPropertyChanged("IsVisible");
        }
    }

When i use the wpf host control in my winfrom i init this variable to false.

I binding the visibility column to this property with converter.

and that's all.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top