草庐IT

wpf-grid

全部标签

c# - 从 WPF 对话框返回自定义值

我正在使用Window.ShowDialog()方法从用户那里获取一些值。但是,该对话框将只返回一个可为null的bool值。如何让我的WPF窗口返回Tuple还是任何其他类型? 最佳答案 您不需要从ShowDialog方法返回该值,如here所述:“bool类型的Nullable)>)值,表示用户如何关闭窗口”。您可以简单地将要返回的值存储在属性或字段中并获取它:window.ShowDialog();Tuplevalue=window.InputValue; 关于c#-从WPF对话框

c# - WPF MVVM Light 单元测试 ViewModels

我不是MVVM模式的常客,这基本上是我第一次使用它。我过去所做的(“普通”WPF)是使用业务层和数据层(通常包含由服务或EntityFramework创建的实体)创建我的View。现在经过一番尝试后,我从MVVMLight创建了一个标准模板并执行了以下操作:定位器:publicclassViewModelLocator{staticViewModelLocator(){ServiceLocator.SetLocatorProvider(()=>SimpleIoc.Default);if(ViewModelBase.IsInDesignModeStatic){SimpleIoc.Defa

c# - WPF:带有重置项的组合框

我想在WPF中制作一个ComboBox,其顶部有一个null项目,当它被选中时,SelectedItem应该设置为null(重置为默认状态)。我一直在寻找,但没有找到令人满意的解决方案。如果可能的话,我希望它仅使用XAML代码或附加行为来执行此操作,因为我真的不喜欢更改View的ViewModel中的内容或覆盖标准控件。这是我到目前为止的想法(缩短的代码):[...](None)[...]我认为最好的方法是以某种方式添加一个事件触发器,当项目被选中时将SelectedIndex设置为-1,但我在这里卡住了。任何想法如何做到这一点?或者更好的方法,比如附加行为?

c# - WPF 和 Prism View 叠加

我需要一些帮助来使用prism框架来叠加View。它比那个复杂一点所以让我解释一下。我也可能想得太多了:D我有shell(wpf窗口),我在一个模块中有2个View(A和B-两个用户控件)。当shell加载时,它加载ViewA。在ViewA上,我有一个“弹出”ViewB的按钮对于一些用户输入。所以我自然会想到某种模式窗口/控件,甚至可能是弹出窗口。然而,我遇到的弹出窗口问题是,当我移动shell时,弹出窗口保持固定,并且它不会阻止ViewA中的事件。我尝试禁用ViewA以停止触发事件,我也尝试使用ato让ViewB随shell一起移动。只有Canvas有效,但我现在需要一种方法来阻止它

c# - WPF:将列表绑定(bind)到列表框

我有一个类:publicclassA:INotifyPropertyChanged{publicListbList{get;set;}publicvoidAddB(Bb){bList.Add(b);NotifyPropertyChanged("bList");}publiceventPropertyChangedEventHandlerPropertyChanged;privatevoidNotifyPropertyChanged(stringinfo){if(PropertyChanged!=null){PropertyChanged(this,newPropertyChangedE

c# - 为什么 WPF 中的 UI 控件具有线程亲和性?

为什么创建控件的线程是可以更新它的线程?为什么MS没有让人们能够使用锁定和其他线程同步技术来读取和写入具有多线程的UI控件上的属性。 最佳答案 每个MSDN的简短描述是WPF’sthreadingmodelwaskeptinsyncwiththeexistingUser32threadingmodelofsinglethreadedexecutionwiththreadaffinity.Theprimaryreasonforthiswasinteroperability–systemslikeOLE2.0,theclipboard,

c# - 如何验证 PasswordBox WPF

我正在尝试对PasswordBox进行验证。为了进行验证,我遵循了这个link,显示了如何在TextBox上进行验证。问题来自PasswordBoxes。因为它的Password出于安全原因不可绑定(bind),所以我尝试按照thislink进行绑定(bind)。(也为CodeProject用户解释了here)。所以,显然,太棒了!我可以将我的PasswordBox与其Password属性绑定(bind),这样我就可以绑定(bind)我的验证。但是它不理我...这是我使用的常规TextBox并且工作正常:这是我尝试模拟的PasswordBox:这就是我为每个TextBox获取Bindi

c# - 如何在 WPF 中创建类似 Windows 8 样式的进度环?

我想在Windows8ProgressRing等桌面应用程序中显示进度。这种类型的进度在安装时或Windows启动时显示,但此控件可以在许多应用程序中使用,因为它非常干净和现代,但我不知道如何实现。进度环图像在这里。请看图片:我可以知道如何使用XAML或代码编写代码吗?我已经看到在WPFProgressRing控件中不存在,所以我必须转到一些自定义控件。想法链接或建议我该如何继续。 最佳答案 使用MahApps.Metro会简单得多,但下面给出了一个简单的类似Metro的等待指示器,显示了如何在XAML中完成它。它本质上是同一个Pa

c# - Xceed WPF propertyGrid 显示扩展集合的项目

如何显示ObservableCollectionXceedWPFPropertyGrid中的自定义对象,其中每个列表项都可以展开以显示自定义对象属性。(即:----属性网格-----核心类(+/-)ObservableCollection(+/-)CustomClass.Object1属性1:值属性2:值(value)…属性N:值(value)(+/-)CustomClass.Object2属性1:值属性2:值(value)…属性N:值(value)如果我使用[ExpandableObject]在ObservableCollection上它只显示Counts属性。编辑:(添加代码)主窗

c# - WPF 从子 ItemsControl 数据模板内部绑定(bind)到父 ItemsControl

我需要能够从子ItemsControll数据模板内部绑定(bind)到父ItemsControl的属性:假设MyParentCollection(外部集合)属于以下类型:publicclassMyObject{publicStringValue{get;set;}publicListMySubCollection{get;set;}并且假设上述类中的MyChildObject属于以下类型:publicclassMyChildObject{publicStringName{get;set;}}如何从内部数据模板内部绑定(bind)到MyParentCollection.Value?我不能