标签: xceed

加载和保存anchora的布局 - 可见性的绑定

我面临的问题是,在加载旧布局后,我无法打开类型X的锚定.仅当我在保存布局之前关闭了类型X的可锚定时才会发生这种情况.

AvalonDock有没有类似的问题?这是AvalonDock的错误吗?经过多年的调试,我担心在ViewModel中进行<Setter Property="IsActive" Value="{Binding Model.IsActive, Mode=TwoWay}"/>更改时,视图中的绑定无法正确更新IsActive.AvalonDock应该负责这项任务.但也许问题是加载和保存布局?

代码

视图

LoadedDockingManager在我的视图中的事件加载我的anchorables(=工具窗口)的保存布局像这样(简化):

string savedLayout = Properties.Settings.Default.Layout;
XmlDocument doc = new XmlDocument();
doc.LoadXml(savedLayout);

// very simplified code. load saved xml layout and add anchorables to the dockmanager
doc.SelectNodes("//LayoutAnchorable").OfType<XmlNode>().ToList().ForEach(anchorable =>
{
    this.DockManager.AnchorablesSource.Add(anchorable);
});
Run Code Online (Sandbox Code Playgroud)

我正在我的视图中的Closing事件中保存我的anchorables的当前布局,MainWindow如下所示(简化):

XmlDocument doc = new XmlDocument();
XmlLayoutSerializer xmlLayoutSerializer = new XmlLayoutSerializer(this.DockManager);

using (MemoryStream stream = new MemoryStream())
{
    xmlLayoutSerializer.Serialize(stream);
    stream.Seek(0, SeekOrigin.Begin);
    doc.Load(stream);
}
// here happens some magic. i think …
Run Code Online (Sandbox Code Playgroud)

c# wpf mvvm avalondock xceed

12
推荐指数
1
解决办法
954
查看次数

无法在CheckComboBox中设置所选项的初始状态

我正在尝试使用Xceed CheckComboBox,除了一个小问题之外它运行良好.最初加载CheckComboBox时,CheckComboBox的ToggleButton部分中正确显示所选项List,但不检查表示这些项的复选框.这是我正在使用的代码

XAML

<xctk:CheckComboBox x:Name="_combo"  Grid.Row="2" Grid.Column="1" 
                 ItemsSource="{Binding RoomFacilities}" 
                 HorizontalAlignment="Center" 
                 VerticalAlignment="Center"
                 DisplayMemberPath="FacilityName" 
                 SelectedItemsOverride="{Binding SelectedFaclities}" 
                    />
Run Code Online (Sandbox Code Playgroud)

查看模型

public class RoomBandUpdateViewModel : Screen, IHandle<RecordChanged<RoomFacility>>,
                                               IHandle<RecordDeleted<RoomFacility>> {
    private ObservableCollection<RoomFacility> _roomFacilities;
    public ObservableCollection<RoomFacility> RoomFacilities {
        get { return _roomFacilities; }
        set { _roomFacilities = value; NotifyOfPropertyChange(() => RoomFacilities); }
    }

    private ObservableCollection<RoomFacility> _selectedFacilities;
    public ObservableCollection<RoomFacility> SelectedFaclities {
        get { return _selectedFacilities; }
        set { _selectedFacilities = value; NotifyOfPropertyChange(() => SelectedFaclities); }
    }

    protected override void OnActivate() {
        SelectedFaclities = new ObservableCollection<RoomFacility>(RoomBand.Facilities);
        RoomFacilities …
Run Code Online (Sandbox Code Playgroud)

wpf xceed wpf-extended-toolkit

10
推荐指数
1
解决办法
1433
查看次数

使用Xceed PropertyGrid

我是C#/ WPF的初学者,我正在尝试使用Xceed PropertyGrid.在他们的网站上他们展示了一个例子

 <xctk:PropertyGrid x:Name="_propertyGrid" Width="450" Margin="10"
                                 AutoGenerateProperties="False">
            <!-- Only the following properties will be displayed in the PropertyGrid -->
            <xctk:PropertyGrid.PropertyDefinitions>
                <xctk:PropertyDefinition Name="FirstName" />
                <xctk:PropertyDefinition Name="FavoriteColor" />
                <xctk:PropertyDefinition Name="PetNames" />
            </xctk:PropertyGrid.PropertyDefinitions>
        </xctk:PropertyGrid>
Run Code Online (Sandbox Code Playgroud)

我插入到我的xaml中.我看到了PropertyGrid View但是我没有看到任何属性定义.我觉得我必须遗漏一些基本的东西?我应该在代码隐藏中添加任何内容吗?

wpf propertygrid xceed

9
推荐指数
1
解决办法
1万
查看次数

DockingManager是否带有处理Anchorables的内置方法

使用一组Anchorables设置AvalonDock时,例如:

<a:LayoutRoot>
    <a:LayoutPanel Orientation="Horizontal">    
        <a:LayoutAnchorablePane>
            <a:LayoutAnchorable Title="A1">
                <!-- content -->
            </a:LayoutAnchorable>
            <a:LayoutAnchorable Title="A2">
                <!-- content -->
            </a:LayoutAnchorable>
    </a:LayoutAnchorablePane>
<!-- ... -->
Run Code Online (Sandbox Code Playgroud)

DockingManager(或AvalonDock中的其他东西)是否有内置的方式来管理已关闭的Anchorables?它们是否存储在某个地方的集合中,以便可以检索并再次显示它们?

例如,用户从上面的代码中关闭第一个(A1),会发生什么?
如何再次显示?

处理关闭和恢复锚点的典型工作流程是什么?

c# wpf xaml avalondock xceed

9
推荐指数
1
解决办法
3585
查看次数

如何设置 DateTimePicker DatePart WPf 的格式

我正在使用XceedWPF 工具包DateTimePicker控件。我想在该控件中设置时间部分的格式。请查找附图供您参考。在该图像中,我只想为突出显示的部分设置格式。

提前致谢。

在此输入图像描述

c# wpf xceed

5
推荐指数
1
解决办法
4878
查看次数

Xceed WPF Toolkit中的Zoombox无法正常工作

我正在尝试通过进行Zoombox控制Xceed。不幸的是,鼠标滚轮或平底锅上没有任何反应。我在这里想念什么吗?

https://github.com/xceedsoftware/wpftoolkit

<Window x:Class="UI.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:xcdg="http://schemas.xceed.com/wpf/xaml/datagrid"
        xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"

        mc:Ignorable="d"
        Title="MainWindow" Height="800" Width="700">
    <Grid>
        <xctk:Zoombox MinScale="0.5" MaxScale="100" >
            <Grid Width="600" Height="400" Background="Yellow">
                <Ellipse Fill="Blue" />
            </Grid>
        </xctk:Zoombox>
    </Grid>

</Window>
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml wpftoolkit xceed

5
推荐指数
1
解决办法
863
查看次数

是否有像Xceed Real-Time Zip一样实时压缩的免费压缩工具?

我需要做的是压缩文件的64KB块,因为它们是从外部服务进来的,然后实时地将这一块压缩数据流式传输到浏览器.Xceed Real-Time非常棒,您可以设置文件的标头,然后将多个64KB块拼凑成客户端上的整个压缩文件.这很好用,您可以通过将其放在循环中轻松处理多个文件.

我的问题是:是否有一个免费的替代压缩实用程序,可以匹配Xceed的复杂性?我需要能够压缩文件并将文件的一部分流式传输到浏览器的东西.几乎所有我见过的免费替代方案都需要在压缩发生之前访问整个文件.Xceed很棒,但价格昂贵.只是想知道是否有一个可以实现这一目标的免费替代品.谢谢!

.net compression zip archive xceed

4
推荐指数
1
解决办法
2985
查看次数

可检查组合框的默认文本

我正在使用Xceed可检查组合框.现在我想显示一个默认文本,具体取决于组合框中选中的复选框,但我不知道该怎么做.

例如:

在此输入图像描述

文本框的内容(红色箭头)应为:

  • 如果未选择任何内容:"请选择"
  • 如果一切都被选中:"所有人"
  • 如果选择了一个或多个:"特定选择"

喜欢:

在此输入图像描述


例如,代码:

XAML:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <xctk:CheckComboBox x:Name="_checkComboBox"
                          Height="22"
                          VerticalAlignment="Stretch"
                          ItemsSource="{Binding Names}"
                          SelectedItemsOverride="{Binding SelectedNames}"
                          DisplayMemberPath="Title"
                          Delimiter=", "
                          Width="100"/>
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

CS:

using System.Windows;

namespace WpfApplication1
{
    using System.Collections.ObjectModel;

    public partial class MainWindow
    {
        public MainWindow()
        {
            InitializeComponent();
            _checkComboBox.DataContext = this;

            Names = new ObservableCollection<People>()
              {
                new People() { Title = "Mikel" },
                new People() { Title = "Tom" },
                new People() { Title = "Jennifer" }, …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml combobox xceed

4
推荐指数
1
解决办法
762
查看次数

正确显示 BusyIndi​​cator

我有一个 WPF C# 应用程序。

我正在使用 Xceeed.wpf 工具包

在伪代码中,我的函数将:

  • 显示忙碌指示器
  • 对我的服务器进行了 REST API 调用
  • BusyIndi​​cator 停止显示

实际上,在 REST API 调用完成之前,BusyIndi​​cator 不会显示。有时它确实会显示,但“品牌”效果并不流畅。

我尝试了几种方法,这是我的最新尝试:

// raise event to invoke method call on main UI page
// event raised here

Task.Run(() =>
{
    // makes API call
    busyIndicator.IsBusy = false;

);

public void ShowBusy()
{
    this.InvokeOnMainThread(() =>
    {
        busyIndicator.IsBusy = true;
    });
}

public static void InvokeOnMainThread(this Control control, Action method)
{
    if (!control.Dispatcher.CheckAccess())
    {            Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, method);
        return;
    }
    method();
}
Run Code Online (Sandbox Code Playgroud)

标记:

    <xctk:BusyIndicator Name="busyIndicator" …
Run Code Online (Sandbox Code Playgroud)

c# wpf xceed

4
推荐指数
1
解决办法
4969
查看次数

如何更改 Xceed WPF DateTimePicker 的日历大小

我正在使用 Xceed DateTimePicker 控件。问题在于它的日历大小:当您放大控件本身的字体时,其弹出日历的大小和字体不会改变。如何更改弹出窗口的大小?

.net c# wpf xaml xceed

4
推荐指数
1
解决办法
2367
查看次数