Tag: mahapps.metro

在ContextMenu中使用MahApps图标

我正在使用MahApps Metro UI工具包编写WPF应用程序。 http://mahapps.com/guides/quick-start.html 从他们网站上的指南,我基本完成了我的应用程序,它看起来很光滑。 我唯一的问题是我无法找到如何使用他们提供的图标包作为contextmenu图标。 这是我正在尝试做的一个直观的例子。 虽然我能够获得原始的“Windows”菜单项来显示它的图标,但我无法对上下文菜单项执行相同的操作。 有什么我做错了或解决这个问题的方法吗? 这是我的.xaml: 我的.xaml.cs: public partial class MainWindow { public MainWindow() { InitializeComponent(); DataContext = new MainWindowViewModel(); } private void WindowsMenuItem_Click(object sender, RoutedEventArgs e) { (sender as MenuItem).ContextMenu.IsEnabled = true; (sender as MenuItem).ContextMenu.PlacementTarget = (sender as MenuItem); (sender as MenuItem).ContextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Bottom; (sender as MenuItem).ContextMenu.IsOpen = true; } […]

将行为附加到MetroWindow失败并导致错误的样式

我有一个简单的测试应用程序,它显示了一个带有附加行为的简单Mahapps MetroWindow。 问题是在附加行为时,绘制了Mahapps MetroWindow的外边框。 删除行为时,所有内容都按预期显示: ……但行为本身没有做任何事情。 这是SomeBehaviour类的代码: public sealed class SomeBehavior : Behavior { public static readonly DependencyProperty SomeKeyProperty = DependencyProperty.Register( “SomeKey”, typeof(Key), typeof(SomeBehavior), new PropertyMetadata(default(Key))); public Key SomeKey { get { return (Key)this.GetValue(SomeKeyProperty); } set { this.SetValue(SomeKeyProperty, value); } } protected override void OnAttached() { base.OnAttached(); } protected override void OnDetaching() { base.OnDetaching(); } […]

如何从特定颜色创建MahApps.Metro重音资源?

我在MahApps网站 (页面底部)注意到了这一点:“也可以通过使用特定颜色动态创建重音资源字典。”但我发现更多地方无处可寻。 是否真的有内置方法(或其他任何东西)? 我只找到了ThemeManager.AddAccent(string name, Uri resourceAddress) ,并使用new Accent(string name, Uri resourceAddress)创建了一个新的重音(当前new Accent(string name, Uri resourceAddress) ,因此名称和资源uri总是需要… 有任何想法吗?

如何在框架页面上方使用Metrowindow的属性

使用Mahapps.metro,并遇到问题。 我想分页页面内容,全部通过地铁窗口内的框架控制。 有两件事我无法弄清楚如何做,这很简单,同时在没有页面的情况下在一个窗口内工作。 首先,我想使用他们的对话框。 以下行直接在窗口中使用时工作: await this.ShowMessageAsync(“This is the title”, “User Setting: ” + x); 但是,它现在给出以下错误: 实例参数:无法从’GameWindow.MainMenu’转换为’MahApps.Metro.Controls.MetroWindow’ 我试图寻找答案,以及尝试诸如此类的事情 await this.Parent.ShowMessageAsync(“This is the title”, “User Setting: ” + x); 但一切都无济于事。 其次,我在我的窗口中配置了一个弹出窗口,我还需要从框架内的页面进行访问。 我不能为我的生活想出这一个…

用于.NET 4.5 wpf项目的.NET 4.5 wpf项目的System.Windows.Interactivity

最近我已将我的WPF项目从.NET4.0迁移到.NET 4.5,我正面临System.Windows.Interactivity问题,否则它正常工作。 错误:无法加载文件或程序集’System.Windows.Interactivity,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35’或其依赖项之一。 定位的程序集的清单定义与程序集引用不匹配。 (HRESULTexception:0x80131040)

KeyUp事件使用“mahapps.metro”加倍

完整项目: https : //uploadfiles.io/wz8ji 关注代码: 代码C#: public partial class MainWindow : MetroWindow { public MainWindow() { InitializeComponent(); } private void Textbox_KeyUp(object sender, KeyEventArgs e) { if (textbox.Text != string.Empty) { this.ShowMessageAsync(“This is the title”, “Some message”); } } } 代码xaml: 在我的文本框中,当我快速擦除并键入时,事件被复制。 当我删除并正常输入“1”时,一切都很好。问题是我删除并输入任何非常快的字符。 当我快速执行此操作时,事件将重复。 我也用这个: http : //mahapps.com/ 我创建了另一个没有使用“mahapps”的项目,它工作正常。 以下是它的发生方式: 按退格键并快速释放+ 1键。 任何方案?

如何在鼠标hover时突出显示MahApps.Metro的图块?

我刚刚为WPF发现了一个非常棒的UI工具包:MahApps.Metro。 我创建了一个窗口,其中包含MahApps.Metro.Controls.Tile类型的切片。 当鼠标经过时,我无法找到突出显示图块的正确方法。 你知道我怎么能这样做? 我是否需要使用模板和故事板(设置似乎有点复杂……)? 谢谢 [编辑]这是与瓷砖的控件: 这是我用于瓷砖的样式(在字典中): 我希望能够更改背景颜色或在鼠标上添加边框。 如果可能的话,我希望能够在鼠标上更改鼠标光标。 我不知道你是否可以触发这样做。 [编辑] mah:Tileinheritance自System.Windows.Controls.Button。 谢谢

使MahApps.Metro中的ProgressRing更小

看起来MahApps.Metro ProgressRing控件默认为最小尺寸为60×60。 ProgressRing有一个名为“IsLarge”的属性,但即使它被设置为“False”,它似乎对能够使ProgressRing小于60×60没有影响。 不经意地改变高度和宽度属性也不会影响这一点。 将GitHUb视为ProgressRing的实际c#代码,看起来有几个属性会影响椭圆直径等,但这些属性是私有属性,不能从外部调用设置。 我怎样才能让它变小? 说20×20或30×30? 在下面的代码中,我指定IsLarge = False,并将大小设置为30×30,但它仍然默认为60×60。 下面是GitHub上的“ProgressRing.cs”文件的代码片段- MahApps.Metro namespace MahApps.Metro.Controls { [TemplateVisualState(Name = “Large”, GroupName = “SizeStates”)] [TemplateVisualState(Name = “Small”, GroupName = “SizeStates”)] [TemplateVisualState(Name = “Inactive”, GroupName = “ActiveStates”)] [TemplateVisualState(Name = “Active”, GroupName = “ActiveStates”)] public class ProgressRing : Control private void SetMaxSideLength(double width) { MaxSideLength = width <= 60 ? […]

在显示另一个之前隐藏所有可见的Metro对话框

我在我的WPF项目中使用MahApps.Metro ,我正在构建一个类来帮助我显示Dialogs 。 我想知道是否有办法在显示另一个之前关闭所有可见对话框。 有时,当我显示ProgressDialog然后显示MessageDialog ,ProgressDialog没有正确关闭,并且保持在后台,所以当我关闭MessageDialog时,它会在那里冻结UI。 这是我目前正在尝试隐藏所有对话框的方式: public static async void HideVisibleDialogs(MetroWindow parent) { BaseMetroDialog dialogBeingShow = await parent.GetCurrentDialogAsync(); while (dialogBeingShow != null) { await parent.HideMetroDialogAsync(dialogBeingShow); dialogBeingShow = await parent.GetCurrentDialogAsync(); } } 我称之为: public static MessageDialogResult ShowMessage(String title, String message, MetroWindow parent, Int32 timeout, MessageDialogStyle style, MetroDialogSettings settings, MessageDialogResult defaultResult) { AutoResetEvent arEvent = new […]

如何使用样式(remix)更改MahApps.Metro对话框内容

这里已经问过这个问题的sA版本。 我认为答案清晰简洁,但我不太明白,我认为我不应该开始大量评论试图弄清楚(因为这里贴出了正确的礼仪) 我想在我的MahApps.Metro对话框中添加一个额外的按钮。 我需要一个Browse按钮,以便用户可以输入目录。 这个答案显示了如何做到这一点,但我不太明白,因为我是C#和WPF的新手。 我不明白的是我的xaml文件中应该放置部分。 如果我猜测它可以在我的之外的任何地方正确,那么我会收到我不理解的错误。 我当前的代码.xaml文件。 如果我在“网格”部分上方插入“样式”部分,则会出现错误The namespace “Dialog” is not defined 我认为xmlns xmlns:Dialogs=”clr-namespace:MahApps.Metro.Controls.Dialogs”应该添加了Dialogs? 一旦我能够获得样式集,我想我只需添加上一个答案的下面代码(使用我喜欢的按钮)。 我不明白的是什么? 提前致谢 注意 我没有添加我的.cs代码b / c我没有问题实际上得到标准的异步对话框显示。