Preview 是静态图片预览框,适合打开一张或多张 System.Drawing.Image。如果需要在窗体内嵌入图片预览区域,请看 ImagePreview 图片预览控件。
在 aardio 中推荐使用嵌入的 AntdUI.BaseForm 或其他 WinForms Form 作为 owner。
import win.ui;
import dotNet;
import dotNet.AntdUI;
import System.Drawing;
var winform = win.form(text="AntdUI Preview";right=520;bottom=320)
winform.add(customBase={cls="custom";left=0;top=0;right=520;bottom=320;z=1};btn={cls="button";text="预览";left=20;top=20;right=120;bottom=56;z=2})
var baseForm = AntdUI.BaseForm(winform.customBase);
winform.btn.oncommand = function(){
var bmp = System.Drawing.Bitmap(160,90);
var cfg = AntdUI.Preview.Config(baseForm,bmp);
cfg.Fit = AntdUI.TFit.Contain;
cfg.Keyboard = true;
AntdUI.Preview.open(cfg);
}
winform.show();
win.loopMessage();
常用构造:
var cfg = AntdUI.Preview.Config(baseForm,image);
多图预览可传入 .NET IList<Image> 或 IList<object> 并配合回调按需取图。简单场景优先使用单图构造,复杂数据源建议先在 C# wiki 签名基础上用反射确认当前 DLL 的泛型参数。
常用属性:
| 属性 | 说明 |
|---|---|
Form |
所属 WinForms 窗口,aardio 中推荐 AntdUI.BaseForm |
Content |
图片或图片集合数据 |
ContentCount |
图片数量 |
SelectIndex |
当前图片序号,0 基索引 |
Fit |
图片填充方式,AntdUI.TFit |
Keyboard |
是否支持 Esc 等键盘操作 |
ShowBtn |
是否显示按钮区域 |
ShowDefaultBtn |
是否显示默认按钮 |
BtnSize / BtnIconSize |
按钮与图标大小 |
Btns |
自定义按钮数组,Preview.Btn[] |
OnBtns |
自定义按钮回调 |
OnSelectIndexChanged |
图片切换回调 |
Tag |
自定义数据 |
链式设置示例:
var cfg = AntdUI.Preview.Config(baseForm,image);
cfg.SetFit(AntdUI.TFit.Contain).SetKeyboard(true).SetShowDefaultBtn(false);
AntdUI.Preview.open(cfg);
import dotNet;
var btns = dotNet.createArray(AntdUI.Preview.Btn,1);
btns.SetValue(AntdUI.Preview.Btn("download","<svg></svg>"),0);
var cfg = AntdUI.Preview.Config(baseForm,image);
cfg.SetBtns(btns);
AntdUI.Preview.open(cfg);
Preview.Btn 常用属性:Name、IconSvg、Tag。
Preview.BtnEvent 常用属性:Index、Data、Tag。
Preview:静态弹层,调用 AntdUI.Preview.open(cfg) 打开预览窗口。ImagePreview:普通控件,嵌入在窗体某个区域,适合持续显示图片集合。Preview.Config 的 owner 是 WinForms Form,普通 aardio win.form 不能直接替代。dotNet.list(System.Drawing.Image) 或根据反射结果构造。<svg></svg> 只是占位。