1
<Window x:Class="WPfDataGrid.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="450" Width="525" Loaded="Window_Loaded">
    <Grid>
            <DataGrid x:Name="dgrdEmployee" Width="300" Height="300" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"/>
            <Button Content="Navigation" x:Name="BtnNavigation" Width="90" Height="40" Margin="204,336,209,-15" />
    </Grid>
</Window>

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

    }

    public class Employees
    {
        public string Name { get; set; }
        public string Id { get; set; }
        public string Address { get; set; }
    }

    public List<Employees> EmployeeList()
    {
        XDocument employees = XDocument.Load(@"C:\Employees.xml");
        List<Employees> employee = (from em in employees.Descendants("Employee")
                                    select new Employees
                                    {
                                        Name = em.Element("Name").Value,
                                        Id = em.Element("Id").Value,
                                        Address = em.Element("Address").Value
                                    }).ToList();
        return employee;
    }
private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        dgrdEmployee.ItemsSource = EmployeeList();
    }
} 

上記のコードで、次の結果が得られます。

ここに画像の説明を入力してください

データグリッドスクロールビューアが表示されている場合はボタンが表示されている必要があり、そうでない場合はボタンが折りたたまれている必要があります。そうするための変更はありますか?

私は以下のようなことを試みました。しかし、それは私には意味がありません。

<Button Content="Navigation" x:Name="BtnNavigation" Visibility="{Binding Visibility, ElementName=dgrdEmployee.ScrollViewer}" Width="90" Height="40" Margin="204,336,209,-15" />
4

1 に答える 1

-1

ScrollViewer常に表示されます。はScrollViewer、表示されるデータの量に応じてスクロールバーを表示または非表示にします。

VerticalScrollBarVisiblityのおよびHorizontalScrollBarVisiblityプロパティにアクセスできると仮定すると、これらのプロパティとボタンのプロパティの間にMultiBindingScrollViewerを作成できる可能性があります。スクロール バーの表示プロパティは別のタイプ (標準の表示値に加えて値を含む) を使用するため、おそらく値コンバーターも作成する必要があります。VisibliityAuto

于 2013-03-12T12:07:45.213 に答える