none
Bitmap[] 数组用什么容器来显示? RRS feed

  • 问题

  • Bitmap[] bmp = new Bitmap[512];

    每一张都是512*512,如何对这些图像进行显示?如何实现选中高亮?有没有现成的控件可以用?

    ,

    2017年12月11日 8:18

答案

全部回复

  • Hi,

    这取决于你想怎么显示你的图片。

    你可以将这些图片绑定到ListBox,listView,ItemsControl等等。根据的截图,你可以参考使用ListBox达到的效果.

    你可以单独设置Item选中时的样式。

     <Grid>      
            <ListBox ItemsSource="{Binding ImageList}">
                <ListBox.ItemsPanel>
                    <ItemsPanelTemplate>
                        <UniformGrid Columns="2"></UniformGrid>
                    </ItemsPanelTemplate>
                </ListBox.ItemsPanel>
    
                <ListBox.ItemContainerStyle>
                    <Style TargetType="ListBoxItem">
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate  TargetType="ListBoxItem">
                                    <Image Margin="15" Height="512" Width="512" Source="{Binding ImagePath}"/>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </ListBox.ItemContainerStyle>
            </ListBox>  
        </Grid>

    Sincerely,

    Bob


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2017年12月12日 6:38
    版主
  • 谢谢您的答复!

    基于文件的显示我按照您的代码已经实现了,但是现在我的Bitmap是调用dll返回的一个内存中的数组,如何按照当前的方式显示内存中的Bitmap[]?

    2017年12月12日 9:33
  • Hi,

    你可以尝试将bitmap转成WPF的ImageSource,然后再将ImageSource绑定到WPF Image控件的source属性上。

    https://stackoverflow.com/questions/26260654/wpf-converting-bitmap-to-imagesource

    https://stackoverflow.com/questions/22499407/how-to-display-a-bitmap-in-a-wpf-image

    Sincerely,

    Bob


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2017年12月12日 9:39
    版主
  • 直接用WritableBitmap就可以了~~~
    • 已标记为答案 ShannonZhou 2017年12月16日 7:01
    2017年12月16日 7:01