Leadtools.Controlsアセンブリ > Leadtools.Controls名前空間 > ImageViewerItemクラス :Urlプロパティ |
この値を設定することが項目がすでにビューワ(それは項目に追加されました)のメンバであるかどうかに依存するとき、とられるアクション。項目がビューワの一部でないならば、URLの値は新しい値で設定されます、そして、項目がビューワに追加されるまで、後述する行動は発生しません。
このプロパティ(またはビューワの項目に項目を追加する)の値を設定するとき、ビューワは以下をします:
新しい値がnullであるならば、任意の1つ前の画像データはアンインストール済みです。imageとSvgDocumentの値をnullに設定することによってされるこれ。解像度の値は、変更されません。これは、空項目を作成します。
新しい値がnullでないならば、以下は起こります:
RasterCodecsInstanceで保存されるRasterCodecsオブジェクトは、以下のようにURLをロードするのに用いられます:
LoadUrlAsSvgの値がfalse(デフォルト)であるならば、RasterCodecs.LoadAsyncが使われます。
LoadUrlAsSvgの値がtrueであるならば、RasterCodecs.LoadSvgAsyncが使われます。
いずれにせよ、ロードは非同期で実行されます、そして、コントロールはすぐにユーザーへ返されます。URLの値は、変更されないで、まだ古い値を保持します。
ロードが終わる(LoadAsyncCompletedまたはLoadSvgAsyncCompletedは発生します)とき、URLプロパティは元の値を渡して更新されます。imageまたはSvgDocumentの1つ前のデータは、imageオブジェクト(LoadUrlAsSvgに従うRasterImageかSvgDocument)で削除されて、置換されます。解像度の値は、imageのDPIでも更新されます。これがされるとき、ItemChangedは項目に関する情報で発生します、そして、理由はImageViewerItemChangedReason.Urlに設定しました。
エラーがロードの間、発生するならば、ItemErrorはエラーに関する情報で発生します。URL、image、SvgDocumentと解像度は、更新されないで、まだオリジナルデータを保持します。
本質的には、URLの値をnullに設定することは、すぐに画像データをクリアします。
URLの値をもう一つの値に設定することはすぐ項目を変更することなくコントロールを返します、ロードが終わるとき、値は更新されます(URL自体を含む)、そして、ItemChangedは発生します。
エラーが発生するならば、項目は変更されません、そして、ItemErrorは発生します。
ビューワが単一の項目モードで使われるときこれがアクティブな項目であるならば、ImageViewerのImageUrlプロパティはこのメンバを更新します。
詳細については、「画像ビューワの項目」を参照してください。
Imports Leadtools Imports Leadtools.Controls Imports Leadtools.Codecs Imports Leadtools.Drawing Imports Leadtools.ImageProcessing Imports Leadtools.ImageProcessing.Color Dim urls As String() = {"http://localhost/myimages/layouttest/200by100_1.png", _ "http://localhost/myimages/layouttest/200by100_2.png", _ "http://localhost/myimages/layouttest/200by100_3.png", _ "http://localhost/myimages/layouttest/100by200_1.png", _ "http://localhost/myimages/layouttest/100by200_2.png", _ "http://localhost/myimages/layouttest/100by200_3.png"} Dim itemIndex As Integer = 0 _imageViewer.BeginTransform() Dim urlIndex As Integer = 0 Do While urlIndex < urls.Length Dim item As ImageViewerItem = New ImageViewerItem() item.Url = New Uri(urls(urlIndex)) item.Text = "Item" & itemIndex Me._imageViewer.Items.Add(item) itemIndex += 1 urlIndex += 1 Loop _imageViewer.EndTransform()
using Leadtools; using Leadtools.Controls; using Leadtools.Codecs; using Leadtools.Drawing; using Leadtools.ImageProcessing; using Leadtools.ImageProcessing.Color; string[] urls = { @"http://localhost/myimages/layouttest/200by100_1.png", @"http://localhost/myimages/layouttest/200by100_2.png", @"http://localhost/myimages/layouttest/200by100_3.png", @"http://localhost/myimages/layouttest/100by200_1.png", @"http://localhost/myimages/layouttest/100by200_2.png", @"http://localhost/myimages/layouttest/100by200_3.png" }; int itemIndex = 0; _imageViewer.BeginTransform(); for (int urlIndex = 0; urlIndex < urls.Length; urlIndex++) { ImageViewerItem item = new ImageViewerItem(); item.Url = new Uri(urls[urlIndex]); item.Text = "Item" + itemIndex; this._imageViewer.Items.Add(item); itemIndex++; } _imageViewer.EndTransform();