0

グリッドとグリッドのすべての行の周りに境界線を引く必要がありますか?

グリッドの周りは簡単です。しかし、すべての行の中に別のグリッドがあり、グリッドの内側にはすべて複数の列があり、すべての列にボタンがあります。だから私はすべての列、すべてのグリッド、すべてのボタンの周りに境界線を描く必要があります。

すべての行について複数を使用して実行しようとしましたが、境界線内にリボンボタンを配置できないというエラーが発生しています。

すべてのグリッドのすべての列の周りに複数を使用する必要がありますか?

試しましたが、何も機能していません。私はWPFが初めてです。

4

2 に答える 2

1

リボン ボタンをリボンの外で使用できるかどうかはわかりません。それは国境の問題とは何の関係もありません。通常のボタンを使用する必要があるかもしれません。視覚的な外観を改善するためにテンプレート化する方法はたくさんあります。

グリッドとセルの周りに境界線を配置する簡単な例を次に示します。

<Window x:Class="TestingWPF.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:properties="clr-namespace:TestingWPF.Properties"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <Style TargetType="{x:Type Border}">
            <Setter Property="BorderThickness" Value="2" />
            <Setter Property="BorderBrush" Value="Red" />
        </Style>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Margin" Value="5" />
            <Setter Property="Content" Value="Test" />
        </Style>
    </Window.Resources>
    <Border BorderBrush="Green" BorderThickness="4" Padding="1">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition />
                <ColumnDefinition />
                <ColumnDefinition />
                <ColumnDefinition />
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
            </Grid.RowDefinitions>

            <Border Grid.RowSpan="4" Grid.ColumnSpan="4" BorderBrush="#FF00FF51"/>

            <Border Grid.Row="0" Grid.Column="0">
                <Button />
            </Border>
            <Border Grid.Row="0" Grid.Column="1">
                <Button />
            </Border>
            <Border Grid.Row="0" Grid.Column="2">
                <Button />
            </Border>
            <Border Grid.Row="0" Grid.Column="3">
                <Button />
            </Border>

            <Border Grid.Row="1" Grid.Column="0">
                <Button />
            </Border>
            <Border Grid.Row="1" Grid.Column="1">
                <Button />
            </Border>
            <Border Grid.Row="1" Grid.Column="2">
                <Button />
            </Border>
            <Border Grid.Row="1" Grid.Column="3">
                <Button />
            </Border>

            <Border Grid.Row="2" Grid.Column="0">
                <Button />
            </Border>
            <Border Grid.Row="2" Grid.Column="1">
                <Button />
            </Border>
            <Border Grid.Row="2" Grid.Column="2">
                <Button />
            </Border>
            <Border Grid.Row="2" Grid.Column="3">
                <Button />
            </Border>

            <Border Grid.Row="3" Grid.Column="0">
                <Button />
            </Border>
            <Border Grid.Row="3" Grid.Column="1">
                <Button />
            </Border>
            <Border Grid.Row="3" Grid.Column="2">
                <Button />
            </Border>
            <Border Grid.Row="3" Grid.Column="3">
                <Button />
            </Border>
        </Grid>
    </Border>
</Window>

ループでグリッドを作成することにより、コードで簡単に複製できます。より良い結果を得るためにテンプレートを調べたいと思うかもしれませんが、何かを達成しようとしている方法ではなく、達成しようとしていることについてより具体的にする必要があります。

于 2012-05-31T16:44:14.650 に答える