Fork me on GitHub

ListBox

 

这是一个ListBox中包括几个Image,就是一个Image列表,当选择一个图片时,它的放大图片会显示在ima这个图片中。

XAML代码:

       <StackPanel Width="638" Height="492" Background="#FFFFFFFF">

       <Image Name="ima" HorizontalAlignment="Stretch" VerticalAlignment="Top" Width="471" Height="292"/>

    <ListBox Width="133" Height="84" SelectionChanged="PrintImage" HorizontalAlignment="Center" SelectionMode="Single" VerticalAlignment="Center">

      <Image Source="images\1.jpg" Width="107.667" Height="80.75"/>

     <Image Source="images\2.jpg" Width="108.333" Height="81.25" RenderTransformOrigin="0.5,0.5">

          <Image.RenderTransform>

                 <TransformGroup>

                        <ScaleTransform ScaleX="-1" ScaleY="1"/>

                        <SkewTransform AngleX="0" AngleY="0"/>

                        <RotateTransform Angle="0"/>

                        <TranslateTransform X="0" Y="0"/>

                 </TransformGroup>

          </Image.RenderTransform>

     </Image>

      <Image Source="images\3.jpg" Width="105.667" Height="79.25"/>

</ListBox>

    </StackPanel>

 

最关键的在CS代码中,sender转成ListBox,取出选中的Item,然后转换成Image,把这个ImageSource赋给ima,让它来显示。

CS代码:

        void PrintImage(object sender, SelectionChangedEventArgs args)

        {

            Image lbi = ((sender as ListBox).SelectedItem as Image);

            ima.Source = lbi.Source;

        }

效果如下:



本文参考MSDN组织。


posted @ 2007-03-31 11:18  桂素伟  阅读(475)  评论(0编辑  收藏  举报