精华内容
下载资源
问答
  • WPF TreeView problems

    2021-01-05 03:51:30
    <div><p>I've tried to do TreeStore refill inside of Window.Shown handler, as i've done in GTK, WinForms, Delphi and more... <p>Actually ItemContainerGenerator....mono/xwt</p></div>
  • WPF Bugfix and enhancements

    2021-01-01 03:09:12
    <p>Two features: WPF ListView now has editable and non-editable CheckBoxes and Text(Boxes/Blocks). And, in theory, CheckBoxes should also be able to support 'MixedMode' or triplestate or ...
  • XWT是Eclipse 组织推出的一种新的界面编程语言。    按照传统的Java UI开发技术,比如使用SWT或者Swing开发界面,往往对UI开发人员的技术水平要求较高,前台界面代码和业务逻辑处理代码结合的比较紧密,不能进行...

         XWT是Eclipse 组织推出的一种新的界面编程语言。

     

         按照传统的Java UI开发技术,比如使用SWT或者Swing开发界面,往往对UI开发人员的技术水平要求较高,前台界面代码和业务逻辑处理代码结合的比较紧密,不能进行很好的分离,代码的重用性也不高,而且也不够灵活,不支持动态调整UI代码,很难集成到开发工具中。

     

         XWT的出现,或许能够改变这个局面!XWT是使用XML作为界面的描述语言的UI框架(国内的一个软件公司也参与了设计开发,名字叫深圳松亚Soyatec),通过UI运行库将XML和SWT/JFace进行相互映射(使用的是Java的反射技术),在运行时将XWT解析成SWT/JFace代码执行。

     

          这算不上什么新技术(这让我想起了JSF,原理很像),不过,它的确简化了UI编程,你可以使用XML来创建可视化的 UI 组件,并且很容易的将前台代码和业务逻辑实现代码进行分离,这样有利于工作的分工。相比较其他标记语言,XWT可以直接描述实例的托管对象

    下面是XWT的设计架构:

    http://www.blogjava.net/images/blogjava_net/vwpolo/XWTOverview/XWT-Architecture.JPG

          使用XWT作为Eclipse的UI框架可以降低学习的门槛,因为XWT是XML的一种方言,学习起来很简单,有比较好的易读性(如果你不知道XML,那么你还真是一个老朽);XWT对开发工具要求不高,你可以使用轻量级的:记事本、EditPlus、EmEditor等,或者中量级的UltraEdit等,或者重量级的Eclipse、WebSphere,甚至还可以跑到Visual Studio上面开发(如果你不选择Eclipse,那么你得非常熟悉SWT/JFace 的API才行)。

        XWT提供了一些比较高级的特性比如支持动态映射模型,采用了成熟的声明UI解决方案与SWT/JFace完美集成,基于JFace  Data Binding 的强大数据绑定技术,将UI和事件处理进行分离了,提供了资源管理功能,支持标记扩展,支持绑定表达式语言,也让组件复用性大大提高。   

        像这种在B/S架构开发中经常采用的技术,应用到C/S架构的开发,不知道大家能不能接受?这到底是不是一门值得期待和投资的技术?或许时间可以证明一切,当然。学一个新语言之前,了解为什么要学它,很重要! 

    展开全文
  • XWT – Animation 支持

    2011-07-14 14:56:00
    XWT内置了Trident作为动画引擎。 Trident 是一个由 Substance look-and-feel 编写的在应用中驱动动画的动画层的新一代解决方案。底层的动画引擎已经开发和生产应用超过两年了,但是UI API非常难以使用。Trident 的...

        XWT内置了Trident作为动画引擎。

       Trident 是一个由 Substance look-and-feel 编写的在应用中驱动动画的动画层的新一代解决方案。底层的动画引擎已经开发和生产应用超过两年了,但是UI API非常难以使用。Trident 的主要目标是保留原项目的强大的功能,性能和现存动画引擎的表现力,同时提供一套简单的API用于使用。 Trident实现原理很像Flash,提供了时间轴(Timeline)概念,

       在XWT中很容易使用Trident,目前提供了一下几种属性动画(Property Anmimation)

    对应的类 属性 组件
    ColorAnimation background,foreground Control
    IntAnmiation alpha Shell
    PointAnimation location Control
    SizeAnmiation size Control
    RectangleAnimation bounds Control

     

    ColorAnmiation

    支持颜色的动态变化,用法:

    <ColorAnimation targetName="labelTarget" targetProperty="background" duration="0:0:8" from="red" to="blue" />

    通过targetName指定目标组件的名称,targetProperty指定目标组件的属性,duration指定持续时间(时:分:秒),from指起始颜色,to目标颜色,通过RGB值变换达到效果。

    完整的例子:

    <Composite xmlns="http://www.eclipse.org/xwt/presentation"
    xmlns:x="http://www.eclipse.org/xwt">
    <Composite.layout>
    <GridLayout numColumns="1"/>
    </Composite.layout>
    <Label name="labelTarget" text="Move mouse in button to see the animation"/>
    <Button name="startButton" text="Start"/>
    <Composite.triggers>
    <!-- Begin the Storyboard -->
    <EventTrigger routedEvent="SelectionEvent" sourceName="startButton">
    <BeginStoryboard name="MyBeginStoryboard">
    <Storyboard>
    <ColorAnimation
    targetName="labelTarget"
    targetProperty="background"
    duration="0:0:8" from="red" to="blue" />
    </Storyboard>
    </BeginStoryboard>
    </EventTrigger>
    </Composite.triggers>
    </Composite>

    这里是通过XWT触发器完成颜色变换的,触发器调用BeginStoryboard,然后将动画任务属性传达给目标组件和属性。这和WPF的设计思想是一脉相承的。

    image_thumb

    点击start按钮后,标签的背景色会由red变成blue。

    你也可以扩展这个程序,加上停止、暂停和恢复功能。

    往.xwt文件拖入几个按钮,然后添加触发器

    <Composite.triggers>
    <!-- Begin the Storyboard -->
    <EventTrigger routedEvent="SelectionEvent" sourceName="startButton">
    <BeginStoryboard name="MyBeginStoryboard">
    <Storyboard>
    <ColorAnimation
    targetName="labelTarget"
    targetProperty="background"
    duration="0:0:8" from="red" to="blue" />
    </Storyboard>
    </BeginStoryboard>
    </EventTrigger>
    <--新增加代码 start>
    <EventTrigger routedEvent="SelectionEvent" sourceName="stopButton">
    <StopStoryboard BeginStoryboardName="MyBeginStoryboard" />
    </EventTrigger>
    <EventTrigger routedEvent="SelectionEvent" sourceName="pauseButton">
    <PauseStoryboard BeginStoryboardName="MyBeginStoryboard" />
    </EventTrigger>
    <EventTrigger routedEvent="SelectionEvent" sourceName="resumeButton">
    <ResumeStoryboard BeginStoryboardName="MyBeginStoryboard" />
    </EventTrigger>
    <--新增加代码 end>
    </Composite.triggers>

    image_thumb[1]

     

    IntAnimation

    可以用于窗口的透明度变换,从完全透明到不透明。

    <IntAnimation
    targetName="window"
    targetProperty="alpha"
    duration="0:0:3" from="0" to="255" />

    PointAnimation

    支持组件大小的变化,用法和ColorAnmiation差不多的:

    <PointAnimation
    targetName="window"
    targetProperty="size"
    duration="0:0:6" from="150, 150" to="600, 600" />

     

    SizeAnmiation

      与PointAnmiation类似

     

    RectangleAnmiation

       改变窗口的坐标和大小

    <RectangleAnimation
    targetName="window"
    targetProperty="bounds"
    duration="0:0:1" from="10, 10, 150, 150" to="300, 300, 600, 600" />

     

      你可以可以将多种动画效果一起使用:一边改变大小,一边更改坐标。

    <Storyboard>
    <PointAnimation
    targetName="window"
    targetProperty="size"
    duration="0:0:1" from="150, 150" to="600, 600" />
    <PointAnimation
    targetName="window"
    targetProperty="location"
    duration="0:0:3" from="10, 10" to="600, 600" />
    </Storyboard>

     

        XWT的动画设置和WPF步骤非常相似。

     

        以上这就是XWT支持的最基本动画效果,虽然功能不是非常强大,但是用起来也不怎么复杂,感兴趣可以研究一下。

     

    参考资料:System.Windows.Media.Animation Namespace

    转载于:https://www.cnblogs.com/vwpolo/archive/2011/07/14/2106368.html

    展开全文
  • 1、在项目根目录下创建一个存放皮肤资源的文件夹 “Themes” 2、往Themes文件夹中添加资源字典 ... ...https://download.csdn.net/download/xwt0511/10808356

    1、在项目根目录下创建一个存放皮肤资源的文件夹 “Themes”

    2、往Themes文件夹中添加资源字典

    内容如:

    <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                        xmlns:local="clr-namespace:ThemeTest.Themes">
        <LinearGradientBrush x:Key="TitleBackground" StartPoint="0,0" EndPoint="0,1">
            <GradientStop Offset="0" Color="#337BCC"></GradientStop>
            <GradientStop Offset="1" Color="#003F9B"></GradientStop>
        </LinearGradientBrush>
        <SolidColorBrush x:Key="TitleForeground" Color="#ffffff"></SolidColorBrush>
    </ResourceDictionary>

    如图,我添加了3个资源字典文件,分别定义了深蓝,浅蓝,橙色三种皮肤的一些画笔

    3、修改app.xaml文件如下

    <Application x:Class="ThemeTest.App"
                 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                 xmlns:local="clr-namespace:ThemeTest"
                 StartupUri="MainWindow.xaml">
        <Application.Resources>
            <ResourceDictionary>
                <ResourceDictionary.MergedDictionaries>
                    <ResourceDictionary Source="Themes/Theme_DarkBlue.xaml"></ResourceDictionary>
                </ResourceDictionary.MergedDictionaries>
            </ResourceDictionary>
        </Application.Resources>
    </Application>

    这里是加载了深蓝为默认皮肤

    4、界面调用对应皮肤的方法

    <Grid Background="{DynamicResource TitleBackground}">

    如上,需要使用{DynamicResource TitleBackground}这样的方式来调用动态资源

    5、动态更换皮肤的方法

    ResourceDictionary mResourceSkin = new ResourceDictionary() { Source = new Uri("/Themes/Theme_" + themeName + ".xaml", UriKind.RelativeOrAbsolute) };
    Application.Current.Resources.MergedDictionaries[0] = mResourceSkin;

    最终效果如下:

    源码下载 https://download.csdn.net/download/xwt0511/10808356

    展开全文
  • <div><p>Make sure a window is closed, regardless of which thread tried to close it.</p><p>该提问来源于开源项目:mono/xwt</p></div>
  • <div><p>Sorry for the encoding issue in WPFEngine.cs I can not handle this ... The implementation is based on the MessageBox class perhaps it is worth to switch some tome to a ...mono/xwt</p></div>
  • Xwt是为Mono和.NET创建的基于.NET框架的跨平台开源UI工具包,它使用通用的API,构建于所支持的每种平台的原生Widget工具包之上。它主要用来创建基于同一个代码库的跨平台桌面应用程序。使用Xwt创建的应用程序在相应...

    Xwt是为Mono和.NET创建的基于.NET框架的跨平台开源UI工具包,它使用通用的API,构建于所支持的每种平台的原生Widget工具包之上。它主要用来创建基于同一个代码库的跨平台桌面应用程序。使用Xwt创建的应用程序在相应平台上具有本地化的视觉效果。
    Xwt既可单独使用来创建完整的应用程序,也可嵌入到现有系统中。这让开发者能够使用原生组件开发应用的核心部分,并利用Xwt创建特定模块,例如对话框,消息框等。
    最新版的Xwt包含下列特性

    • 支持GTKCocoa(Mac)和WPF(Windows)
    • 能够在同一应用程序中使用多个后端
    • Widget库
    • 绘图API
    • 可扩展
    • 可插入新的后端
    • 可扩展现有后端
    • 将用户界面嵌入到原生UI

    XWT工具包包括了WindowsMacOS XLinux等平台相关的类库。要生成所需要的库,请用Visual Studio 2012或者MonoDevelop打开Xwt.sln,然后构建这个解决方案。例如,在Windows下构建WPF应用程序需要用到Xwt.dll和Xwt.WPF.dll。
    要为应用程序创建内容,需要用到Widget。XWT还一同发布了大量Widget,它们均继承了抽象基类Xwt.Widget。

    查看英文原文:Build Cross Platform Applications with Xwt

    展开全文
  • 转载于infoq,可以用来创建运行于windows,linux,mac os的桌面UI。 很奇怪的搭配,GTK+本身就是跨平台的,效果也不错,参见Gnome、vmware、gedit的...mono还不能搞定WPF,为了满足mono的跨平台UI,组合的不伦不类。
  • 标注工具的安装

    万次阅读 2019-09-14 12:11:28
    升级pip pip install --upgrade pip pip install labelme pip install labelImg 标注完成后,标注文件保存为.json文件,且文件名与图片的名称一样 { "version": "3.16.7", ... "label"...
  • Spritefont编辑器 Spritefont Editor是Xna“ .... 如果您使用的是Gtk或Wpf,则可以将Xwt添加为引用,然后像这样将小部件转换为本地工具箱(将Gtk替换为您选择的工具箱): var sf_widget = new SFEditor . SFWidget ()
  • Wpf: ~~works out of the box~~ works partially (needs review) Mac: uses default Xwt backends (both included), needs #426 (!) <p>Other changes: - depends on / includes #428, (partially) #429 - Xwt: ...
  • DotNet 资源大全中文版(Awesome最新版)
  • Added Widget.Tag property

    2020-12-30 16:37:21
    The Windows Forms and WPF for this purpose have a Tag property. In this pull-request I added a Tag property into the XwtComponent.cs. Any claims or suggestions about my edits are welcome. The pre-...
  • C#开源绘图控件Oxyplot

    万次阅读 2018-01-20 18:10:19
    Oxyplot是一个.NET跨平台的绘图组件,适用于WPF, Windows 8, Windows Phone, Windows Phone Silverlight, Windows Forms, Silverlight, GTK#, Xwt, Xamarin.iOS, Xamarin.Android, Xamarin.Forms and Xamarin.Mac....
  • 如果你正在开发客户端报表图相关的应用,除了.NET自带的控件,你还...你可以在很多平台上使用它,如WPF, Windows 8, Windows Phone, Windows Phone Silverlight, Windows Forms, Silverlight, GTK#, Xwt, Xamarin...
  • OxyPlotWinform.rar

    2020-03-20 14:55:36
    Oxyplot是一个.NET跨平台的绘图组件,适用于WPF, Windows 8, Windows Phone, Windows Phone Silverlight, Windows Forms, Silverlight, GTK#, Xwt, Xamarin.iOS, Xamarin.Android, Xamarin.Forms and Xamarin.Mac....
  • .NET Platform (WinForm, WPF, ASP.NET, Silverlight, Windows Phone) 商业用户界面,皮肤,报表,图表,组件等等: >>>DevExpress中文详情>>>Telerik介绍 >>>ComponentOne中文介绍>>>DevComponent>>>...
  • 1、TabControl ------ Alignment控制横竖外形tab 2、Panel 是正常的panel 3、splitContainer 就是切割为二的Panel,可以更换横竖结构外形,...Oxyplot是一个.NET跨平台的绘图组件,适用于WPF, Windows 8, Windows P
  • Awesome DotNet,这又是一个 Awesome XXX 系列的资源整理,由 quozd发起和维护。内容包括:编译器、压缩、应用框架、应用模板、加密、数据库、反编译、IDE、日志、风格指南等。 伯乐在线已在 GitHub 上发起「...
  • 算法与数据结构(Algorithms and Data structures) 应用程序接口(API) 应用程序框架(Application Frameworks) 模板引擎(Application Templates) ...人工智能(Artificial Intelligence) ...
  • .Net 资源大全中文版

    2016-09-20 09:35:00
    为什么80%的码农都做不了架构师?>>> ...
  • DotNet 资源大全

    2019-01-08 08:23:10
    awesome-dotnet 是由 quozd 发起和维护。内容包括:编译器、压缩、应用框架、应用模板、加密、数据库、反编译、IDE、日志、风格指南等。 ... (注:下面用 [$] 标注的表示收费工具,但部分收费工具针对开源软件的...
  • .Net开源框架列表

    2017-03-13 12:53:00
    API 框架 NancyFx:轻量、用于构建 HTTP 基础服务的非正式(low-ceremony)框架,基于.Net 及 Mono 平台。官网 ...ServiceStack:架构缜密、速度飞快、令人愉悦的 web 服务。...Nelibur:Nelibur 是一个...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 138
精华内容 55
关键字:

wpfxwt