小编Abi*_*hew的帖子

LayoutTransform中的ScaleTransform不起作用,但可与RenderTransform一起使用

我正在尝试在我的应用程序中做两件事。

1.缩放图像

能够与RenderTransform。但需要实现LayoutTransform才能启用Scrollviewer

a

工作。

 <Image.RenderTransform>
      <ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
 </Image.RenderTransform>
Run Code Online (Sandbox Code Playgroud)

无法运作

<Image.LayoutTransform>
     <ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
</Image.LayoutTransform>
Run Code Online (Sandbox Code Playgroud)

2.旋转图像

既工作ScaleTransformRenderTransform,但需要它ScaleTransform来获得ScrollViewer

问题是,在ScaleTransformLayoutTransform

<Image.LayoutTransform>
    <TransformGroup> 
       <ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
       <RotateTransform Angle="{Binding RotateAngle}"/>
    </TransformGroup>
</Image.LayoutTransform>
Run Code Online (Sandbox Code Playgroud)

不能太兼顾ScaleTransformRotateTransformScrollViewer

我尝试过 Canvas

a

<Canvas.LayoutTransform>
   <TransformGroup> 
      <ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
      <RotateTransform Angle="{Binding RotateAngle}"/>
   </TransformGroup>
</Canvas.LayoutTransform>
Run Code Online (Sandbox Code Playgroud)

旋转行为不同,但能够实现两种功能,但 ScrollViewer不能滚动。

画布的旋转行为 …

c# wpf xaml mvvm wpf-4.0

5
推荐指数
1
解决办法
2474
查看次数

列表框分组 WPF

我正在尝试对列表框进行分组。我所能显示的就是标题。

我有一个 'Online Users' 列表,看起来像这样。

public class OnlineUser{
  public string Branch {get;set;}
  public string FirstName{get;set;}
  public string LastName{get;set;}
}
Run Code Online (Sandbox Code Playgroud)

然后我用一些用户填充列表,并将该列表放入 ICollectionView 'FilterableOnlineUsers'

FilterableOnlineUsers = CollectionViewSource.GetDefaultView(OnlineUsers);
FilterableOnlineUsers.GroupDescriptions.Add(new PropertyGroupDescription("Branch"));
FilterableOnlineUsers.SortDescriptions.Add(new SortDescription("Branch", ListSortDirection.Descending));
Run Code Online (Sandbox Code Playgroud)

在我的 Xaml 中:

<ListBox  SelectedItem="{Binding DataContext.SelectedUser" ItemsSource="{Binding DataContext.FilterableOnlineUsers" >
<ListBox.GroupStyle>
    <GroupStyle />
</ListBox.GroupStyle>
<ListBox.ItemTemplate>
    <DataTemplate>
         <StackPanel Orientation="Horizontal">
            <TextBlock>
                <TextBlock.Text>
                    <MultiBinding StringFormat="{}{0} {1}">
                         <Binding Path="FirstName"></Binding>
                        <Binding Path="LastName"></Binding>
                    </MultiBinding>
                </TextBlock.Text>
            </TextBlock>
        </StackPanel>
    </DataTemplate>
 </ListBox.ItemTemplate>
Run Code Online (Sandbox Code Playgroud)

我能在列表框中显示的只是分支名称。我无法让名字或姓氏显示在组描述下方。

谢谢。

c# wpf xaml wpf-controls

1
推荐指数
1
解决办法
6087
查看次数

标签 统计

c# ×2

wpf ×2

xaml ×2

mvvm ×1

wpf-4.0 ×1

wpf-controls ×1