LEADTOOLS WPFとSilverlight(Leadtools.Windows.Controlsアセンブリ)

フレームを表示

ImageViewerクラス






メンバ 
インタラクティブUI操作でWPF/Silverlight System.Windows.Media.ImageSourceを示すスクロール可能なコントロールを表します。
オブジェクトモデル
構文
解説

ImageViewerクラスは、WPF/Silverlight System.Windows.Media.ImageSourceまたはその派生クラスの1つを示すのを可能にします。LEADTOOLS Leadtools.RasterImageを示すために、RasterImageViewerコントロールを使います。

WPF/Silverlightアプリケーションでパニング、ズームと拡大鏡などのスクロールとインタラクティブUI操作でimageを示したいとき、このコントロールは適当です。背景画像(すなわちスクロールまたは他のどのインタラクティブ操作も必要としないimage)を表示するためにコントロールのために、ImageBoxを使います、さもなければ、RasterImageBoxは制御します。

imageコンテンツがロードされるまで、imageコンテンツがコントロールの最終的なサイズと位置を決定するのに用いられるので、コントロールのSystem.Windows.FrameworkElement.ActualWidthSystem.Windows.FrameworkElement.ActualHeightはゼロとして報告します。

固定粒度調整のために、System.Windows.FrameworkElement.WidthSystem.Windows.FrameworkElement.Heightプロパティは、設定されることができます。しかし、メディアのアスペクト比を保存するために、両方ともでなくSystem.Windows.FrameworkElement.WidthまたはSystem.Windows.FrameworkElement.Heightプロパティを設定します。

ImageViewerコントロールサポートが、以下の機能性:です

サンプル
Copy Code  
Imports Leadtools.Windows.Controls

Private Class MyWindow1 : Inherits Window
    Private theViewer As ImageViewer
    Public Sub New()
        ' Create the  viewer
        theViewer = New ImageViewer()
        ' Create Dock Panel

        Dim panel As DockPanel = New DockPanel()
        Content = panel

        DockPanel.SetDock(theViewer, Dock.Bottom)

        theViewer.HorizontalAlignment = HorizontalAlignment.Center
        theViewer.VerticalAlignment = VerticalAlignment.Bottom
        theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left
        theViewer.ImageVerticalAlignment = VerticalAlignment.Top
        theViewer.UseDpi = True
        theViewer.ScreenDpiX = 96
        theViewer.ScreenDpiY = 96

        panel.Children.Add(theViewer)

        ' load an image into the viewer
        theViewer.Source = New BitmapImage(New Uri(Path.Combine(LEAD_VARS.ImagesDir, "cannon.jpg")))

        Title = String.Format("Size mode = {0}, double click to change", theViewer.SizeMode)

        AddHandler theViewer.MouseDoubleClick, AddressOf theViewer_MouseDoubleClick
    End Sub

    Private Sub theViewer_MouseDoubleClick(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
        Select Case theViewer.SizeMode
            Case SizeMode.Normal
                theViewer.SizeMode = SizeMode.Stretch

            Case SizeMode.Stretch
                theViewer.SizeMode = SizeMode.Fit

            Case SizeMode.Fit
                theViewer.SizeMode = SizeMode.FitAlways

            Case SizeMode.FitAlways
                theViewer.SizeMode = SizeMode.FitWidth

            Case SizeMode.FitWidth
                theViewer.SizeMode = SizeMode.Normal
        End Select

        Title = String.Format("Size mode = {0}, double click to change", theViewer.SizeMode)

    End Sub
End Class

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools.Help;
using Leadtools.Windows.Controls;

class MyWindow1 : Window
{
   ImageViewer theViewer;
   public MyWindow1()
   {
      // Create the  viewer
      theViewer = new ImageViewer();
      // Create Dock Panel

      DockPanel panel = new DockPanel();
      Content = panel;

      DockPanel.SetDock(theViewer, Dock.Bottom);

      theViewer.HorizontalAlignment= HorizontalAlignment.Center;
      theViewer.VerticalAlignment= VerticalAlignment.Bottom;
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left;
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top;
      theViewer.UseDpi = true;
      theViewer.ScreenDpiX = 96;
      theViewer.ScreenDpiY = 96;

      panel.Children.Add(theViewer);

      // load an image into the viewer
      theViewer.Source = new BitmapImage(new Uri(Path.Combine(LEAD_VARS.ImagesDir, "cannon.jpg")));

      Title = string.Format("Size mode = {0}, double click to change", theViewer.SizeMode);

      theViewer.MouseDoubleClick += new MouseButtonEventHandler(theViewer_MouseDoubleClick);
   }

   void theViewer_MouseDoubleClick(object sender, MouseButtonEventArgs e)
   {
      switch(theViewer.SizeMode)
      {
         case SizeMode.Normal:
            theViewer.SizeMode = SizeMode.Stretch;
            break;

         case SizeMode.Stretch:
            theViewer.SizeMode = SizeMode.Fit;
            break;

         case SizeMode.Fit:
            theViewer.SizeMode = SizeMode.FitAlways;
            break;

         case SizeMode.FitAlways:
            theViewer.SizeMode = SizeMode.FitWidth;
            break;

         case SizeMode.FitWidth:
            theViewer.SizeMode = SizeMode.Normal;
            break;
      }

      Title = string.Format("Size mode = {0}, double click to change", theViewer.SizeMode);

   }
}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools.Help;
using Leadtools.Windows.Controls;

class MyWindow1 : ChildWindow
{
   ImageViewer theViewer;
   public MyWindow1()
   {
      // Create the  viewer
      theViewer = new ImageViewer();
      // Create Dock Panel

      StackPanel panel = new StackPanel();
      Content = panel;

      theViewer.HorizontalAlignment= HorizontalAlignment.Center;
      theViewer.VerticalAlignment= VerticalAlignment.Bottom;
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left;
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top;
      theViewer.UseDpi = true;
      theViewer.ScreenDpiX = 96;
      theViewer.ScreenDpiY = 96;

      panel.Children.Add(theViewer);

      // load an image into the viewer
      theViewer.Source = new BitmapImage(new Uri(LeadtoolsExamples.Common.ImagesPath.Path + "cannon.jpg"));

      Title = string.Format("Size mode = {0}, double click to change", theViewer.SizeMode);

      theViewer.MouseLeftButtonDown += new MouseButtonEventHandler(theViewer_MouseLeftButtonDown);
   }

   void theViewer_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
   {
      switch (theViewer.SizeMode)
      {
         case SizeMode.Normal:
            theViewer.SizeMode = SizeMode.Stretch;
            break;

         case SizeMode.Stretch:
            theViewer.SizeMode = SizeMode.Fit;
            break;

         case SizeMode.Fit:
            theViewer.SizeMode = SizeMode.FitAlways;
            break;

         case SizeMode.FitAlways:
            theViewer.SizeMode = SizeMode.FitWidth;
            break;

         case SizeMode.FitWidth:
            theViewer.SizeMode = SizeMode.Normal;
            break;
      }

      Title = string.Format("Size mode = {0}, double click to change", theViewer.SizeMode);
   }
}
Imports Leadtools
Imports Leadtools.Windows.Controls

Private Class MyWindow1 : Inherits ChildWindow
   Private theViewer As ImageViewer
   Public Sub New()
      ' Create the  viewer
      theViewer = New ImageViewer()
      ' Create Dock Panel

      Dim panel As StackPanel = New StackPanel()
      Content = panel

      theViewer.HorizontalAlignment = HorizontalAlignment.Center
      theViewer.VerticalAlignment = VerticalAlignment.Bottom
      theViewer.ImageHorizontalAlignment = HorizontalAlignment.Left
      theViewer.ImageVerticalAlignment = VerticalAlignment.Top
      theViewer.UseDpi = True
      theViewer.ScreenDpiX = 96
      theViewer.ScreenDpiY = 96

      panel.Children.Add(theViewer)

      ' load an image into the viewer
      theViewer.Source = New BitmapImage(New Uri(LeadtoolsExamples.Common.ImagesPath.Path & "cannon.jpg"))

      Title = String.Format("Size mode = {0}, double click to change", theViewer.SizeMode)

      AddHandler theViewer.MouseLeftButtonDown, AddressOf theViewer_MouseLeftButtonDown
   End Sub

   Private Sub theViewer_MouseLeftButtonDown(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
      Select Case theViewer.SizeMode
         Case SizeMode.Normal
            theViewer.SizeMode = SizeMode.Stretch

         Case SizeMode.Stretch
            theViewer.SizeMode = SizeMode.Fit

         Case SizeMode.Fit
            theViewer.SizeMode = SizeMode.FitAlways

         Case SizeMode.FitAlways
            theViewer.SizeMode = SizeMode.FitWidth

         Case SizeMode.FitWidth
            theViewer.SizeMode = SizeMode.Normal
      End Select

      Title = String.Format("Size mode = {0}, double click to change", theViewer.SizeMode)
   End Sub
End Class
<Window x:Class="WPFSamples.ImageViewer"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:Leadtools_Windows_Controls="clr-namespace:Leadtools.Windows.Controls;assembly=Leadtools.Windows.Controls"
    Height="600" Width="800">
  <DockPanel>
    <Leadtools_Windows_Controls:ImageViewer
                Name="theViewer"
                Source="file:///c:\users\Public\Documents\LEADTOOLS Images\cannon.jpg"
                DockPanel.Dock= "Bottom"
                HorizontalAlignment="Center" VerticalAlignment="Bottom"
                UseDpi="false"
                MouseDoubleClick="theViewer_MouseDoubleClick"/>
  </DockPanel>
  <Window.Title>
    "Size mode =Normal, double click to change"
  </Window.Title>
</Window>
必要条件

ターゲットプラットホーム

参照

参照

ImageViewerメンバ
Leadtools.Windows.Controls名前空間
RasterImageとWPF/Silverlight