在wpf c中使按钮重叠#

时间:2015-07-25 18:34:28

标签: c# wpf itemscontrol

我已经解决了这个问题

我所需要的只是物业保证金和新的强势

我试图在ItemsControl中设置按钮(我在运行时使用C#)重叠但是留下一个小空间,就像你把扑克牌放在一堆时所做的那样;我需要能够看到每张卡的顶部。

我如何通过c#做到这一点?

  <Grid>
    <Grid HorizontalAlignment="Left" Height="500" VerticalAlignment="Top" Width="320">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="75*" Name="Row1"/>
            <ColumnDefinition Width="75*" Name="Row2"/>
            <ColumnDefinition Width="75*" Name="Row3"/>
            <ColumnDefinition Width="75*" Name="Row4"/>
        </Grid.ColumnDefinitions>
        <ItemsControl HorizontalAlignment="Left" Height="500" VerticalAlignment="Top" Width="75" Grid.Column="0" Name="Stack1"/>
        <ItemsControl HorizontalAlignment="Left" Height="500" VerticalAlignment="Top" Width="75" Grid.Column="1" Name="Stack2"/>
        <ItemsControl HorizontalAlignment="Left" Height="500" VerticalAlignment="Top" Width="75" Grid.Column="2" Name="Stack3"/>
        <ItemsControl HorizontalAlignment="Left" Height="500" VerticalAlignment="Top" Width="75" Grid.Column="3" Name="Stack4"/>
    </Grid>

这是我的&#34;容器&#34;用于按住按钮。每个ItemsCntrol最多可以容纳13个按钮,我需要它们才能超过一圈,但之前没有完全隐藏按钮。像这样:

http://i.stack.imgur.com/awrSg.png

3 个答案:

答案 0 :(得分:0)

你的意思是这样吗?

<Window x:Class="WpfApplication2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <TextBox Name="username" HorizontalAlignment="Left" Height="23" Margin="142,70,0,0" TextWrapping="Wrap" Text="{Binding Path=UserName, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Top" Width="120"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,144,0,0" VerticalAlignment="Top" Width="75"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,154,0,0" VerticalAlignment="Top" Width="75"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,164,0,0" VerticalAlignment="Top" Width="75"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,174,0,0" VerticalAlignment="Top" Width="75"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,184,0,0" VerticalAlignment="Top" Width="75"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,194,0,0" VerticalAlignment="Top" Width="75"/>
        <Button Content="Button" HorizontalAlignment="Left" Command="{Binding LoginCommand, UpdateSourceTrigger=PropertyChanged}" Margin="192,204,0,0" VerticalAlignment="Top" Width="75"/>
    </Grid>
</Window>

答案 1 :(得分:0)

更改ItemsControl使用的面板。

<ItemsControl>
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <Grid/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <Button/>
    <Button/>
</ItemsControl>

您可以使用WPF提供的任何面板或自己编写代码并以此方式使用。

答案 2 :(得分:0)

好的等待让它变得简单: 1.创建你想要的按钮。 2.现在把第一个放在另一个或你想要的位置, 3.在两个按钮中,您只是将要重叠的按钮重叠在另一个按钮上,右键单击它并按顺序将其命名为前面。 4.对所有按钮重复此过程。现在这首先在UI中看起来就像你想要的那样。 5现在,当你运行它时,你可以完全按照你想要的那样找到它。