草庐IT

c# - 如何创建在尝试打开另一个实例时恢复打开窗口的单实例 WPF 应用程序?

这个问题在这里已经有了答案:Whatisthecorrectwaytocreateasingle-instanceWPFapplication?(39个答案)Preventmultipleinstancesofagivenappin.NET?(22个答案)关闭1年前。抱歉,标题很难理解。我不知道该如何表达。我有一个应用程序,每个用户session只允许运行一个实例。如果用户再次单击以启动应用程序,我希望将已经聚焦的应用程序置于焦点位置。窗口可能会折叠Visibility。如果它可见,我知道我可以使用if(IsIconic(hWnd)){ShowWindowAsync(hWnd,swRe

c# - WPF 文本框接受 INT 但不接受 NULLABLE INT?

模型publicint?SizeLength{get;set;}XAML一旦用户尝试退格键或删除此文本框中的值,将出现消息Value''cannotbeconverted。我可以知道它有什么问题吗? 最佳答案 使用:{BindingTargetNullValue=''} 关于c#-WPF文本框接受INT但不接受NULLABLEINT?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

c# - View Model 之间的 WPF MVVM 通信

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭1年前。Improvethisquestion我正在开发WPFMVVM应用程序,其中我有2个ViewView1和View2及其各自的ViewModel。现在,我想单击View1中的按钮将关闭View1并使用ViewModel1打开View2。此外,我想在从ViewModel1打开时将一些数据(例如person类的实例)传递给ViewModel2,这将用于在View2中显示信息。仅在ViewModels中实现此目的的最佳且可能是最简单的

c# - 如何在 WPF 工具包日历控件中绑定(bind) BlackoutDates?

我想将日期列表绑定(bind)到BlackoutDates属性,但这似乎不太可能。特别是在MVVM场景中。有没有人完成过这样的事情?是否有适合MVVM的良好日历控件? 最佳答案 对于你的DatePicker难题,我发现了一个使用附加属性的巧妙hack(根据我对CommandBindings的使用进行了修改):classAttachedProperties:DependencyObject{#regionRegisterBlackoutDates//Addsacollectionofcommandbindingstoadatepick

c# - 将 Storyboard 放在应用程序资源中

我需要在多个地方使用相同的Storyboard,因此我将Storyboard放在我的Application.Resources中。当我尝试执行Storyboard时,唯一的问题是我需要引用我想要制作动画的目标。这是我的Storyboard:border2我为不同对象的高度设置动画的方式是通过更改动态资源目标。当Storyboard在当前窗口中时,我能够这样做。但是现在我想把它放在应用程序资源中,我不知道如何引用目标属性。编辑我之前发布的解决方案效果很好,但有时很难用代码创建复杂的动画。所以我想出的另一个替代解决方案是创建带有表情混合的Storyboard。所以我在表达式混合中将一个随机

c# - WPF中TabControl的TabChanged事件

我在WPF中有一个TabControl。我想找到更改选项卡时发生的事件。这个事件的名称是什么? 最佳答案 TabControl继承自Selector其中包含SelectionChangedevent.privatevoidOnSelectionChanged(Objectsender,SelectionChangedEventArgsargs){vartc=senderasTabControl;//ThesenderisatypeofTabControl...if(tc!=null){varitem=tc.SelectedItem;

c# - WPF 工具提示不更新

假设我有一个代表员工的简单类classStaff{publicstringFirstName{get;set;}publicstringFamilyName{get;set;}publicintSecondsAlive{get;set;}}我有一个员工数据模板然后我在ListBox中显示一大堆员工myListBox.ItemsSource=GetAllStaff();非常标准的东西。我遇到的问题是显示某人存活的秒数的工具提示没有得到更新。当您第一次将鼠标悬停在一名工作人员身上时,它可以正常工作,但从那时起,它就会永远保持该值。我可以实现INotifyPropertyChanged来解决

c# - 使用 MVVM 将列表框滚动到 View 中

我有一个非常简单的问题,但我不知道如何使用MVVM破解它。我有一个ListBox绑定(bind)到ObservableCollection.我运行一个进程,将一大堆项目添加到集合中,因此它们显示在ListBox中。.问题是当项目被添加到列表框时...滚动条只是增长,但我似乎无法弄清楚如何制作它ScrollIntoView对于添加到集合中的每个项目。此示例代码完美地说明了问题。XAML查看模型namespaceStack{usingSystem;usingSystem.Collections.ObjectModel;usingSystem.ComponentModel;usingSyst

c# - 绑定(bind)到内部属性?

我正在使用MVVM尝试一些不同的事情。在我们的ViewModel中,绑定(bind)到View的属性是公开的。我以按钮绑定(bind)为例。这是一个简单的示例。查看.xaml:ViewModel.csprivateICommand_testButtonCommand;publicICommandTestButtonCommand{get{return_testButtonCommand??(_testButtonCommand=newRelayCommand(SomeMethod));}}我的问题是,我们可以将TestButtonCommand设为内部而不是公共(public)吗?内部

c# - 如何在 UserControl 中使用 ContentPresenter

我想创建一个UserControl(在本例中是一个定义了背景颜色的方形按钮),它可以承载自己的内容。用户控件:现在,如您所料,如果我在我的MainView中使用此控件,一切都会正常工作,直到我定义一些内容。使用:TEST在这种情况下,“TEST”将覆盖UserControl的整个内容(整个按钮模板)。我猜这是因为UserControl中的按钮被定义为“内容”本身,并且在定义新内容时它会被覆盖。所以最后一个问题是:是否有可能实现我正在寻找的东西?如果是:如何?我如何将我在MainView中定义的内容“重定向”到我的按钮模板内的自定义ContentPresenter而不是UserContr