编辑简单的问题是,我怎样才能让Thread.CurrentPrincipal.Identity.Name让当前用户在WPF中登录?结束编辑我正在尝试调用一个现有方法(不在任何类型的服务中;只是POCO中的一个方法)来检索当前用户:Thread.CurrentPrincipal.Identity.Name这段代码是由其他人编写的,并且(大概)与他的ASP.NETMVC项目一起工作。我正在尝试从WPF中调用相同的方法,但名称现在为空。我能做些什么吗? 最佳答案 将Thread.CurrentPrincipal设置为newWindowsP
我正在制作一个WPF应用程序,我想发布该应用程序的测试版,为此我添加了一个名为“debug”的Button,这基本上显示/隐藏控制台窗口。每次事件发生后,我都会在控制台上写下适当的消息,这样可以帮助用户通过查看控制台上的消息来报告他们遇到的问题。对于背景故事(如果没有帮助),我们深表歉意。我基本上需要知道如何在c#中动态显示/隐藏控制台窗口。 最佳答案 你认为现在我理解这个问题了吗?[DllImport("Kernel32")]publicstaticexternvoidAllocConsole();[DllImport("Kern
我的问题是:我找不到如何切换WPF网格列的可见性。假设以下XAML标记:Aferwards网格充满了一些控件等。现在我想从我的C#代码中动态隐藏单个列。我尝试通过将列的定义宽度设置为零来实现这一点,例如Column1.Width=0。这行得通,但我不太喜欢这种解决方案-真的没有更好的方法吗?我正在寻找类似myGrid.Columns[0].Visibility=COLLAPSED或Column1.Visibility=HIDDEN的东西。我只是找不到类似的东西-有什么想法吗? 最佳答案 请在您的ViewModel中实现INotify
这可能是SettheDefaultDateofWPFDatePickertoCurrentDate的重复项但我已经尝试了问题中的代码但它不起作用,希望我遗漏了一些简单的东西好的,正如问题所述,我想在加载View时显示当前日期,但是,我将SelectedDate属性绑定(bind)到我的属性,我认为您不能使用“文本”,因为我我绑定(bind)到的是DateTime属性。是的,我可以在模型中进行转换,但XAML(我认为)应该能够为我完成此操作。好的,我知道出了什么问题,日期显示为“01/01/0001”,因为它绑定(bind)到我的属性(property),默认为01/01/0001,所以
我正在尝试为浏览器控件发送击键(Ctrl+t)。但是,SendKeys.Send()在WPF应用程序中显示错误?我的问题是:我可以在WPF应用程序中使用SendKeys.Send()方法吗?是否有发送自动击键的替代方法? 最佳答案 SendKeys是System.Windows.Forms命名空间的一部分,在Wpf中没有等效的方法。您不能将SendKeys.Send与WPF一起使用,但可以使用SendKeys.SendWait方法,如果您将System.Windows.Forms添加到项目引用中。您唯一的其他选择是PInvokeSe
我知道WPF更复杂、更灵活,因此可以考虑进行更多计算。但是由于渲染是在GPU上完成的,对于相同的应用程序(功能和视觉),它不会比Winforms更快吗?我的意思是,当您不运行任何游戏或进行繁重的3D渲染时,GPU不会执行繁重的工作,对吧?而CPU总是很忙。这是一个有效的假设还是WPF的GPU利用率是其管道中非常小的操作?编辑:我感兴趣的应用程序是一个3d建模和动画软件,您可以在其中使用3d视口(viewport)导航和编辑场景以及场景中的对象。但我想使用WPF,因为它的现代架构,而且是从头开始。EDIT2:同样出于我的目的,由于软件的高端要求,我将对应用程序本身使用DirectX。至于
对于我的WPF应用程序,我使用TextWriterTraceListener记录到一个文本文件。我还可以如何将Trace输出显示到文本框? 最佳答案 我将其用于C#winforms,应该可以轻松调整为wpfpublicclassMyTraceListener:TraceListener{privateTextBoxBaseoutput;publicMyTraceListener(TextBoxBaseoutput){this.Name="Trace";this.output=output;}publicoverridevoidWri
我正在尝试学习将Caliburn.Micro与WPF结合使用。如何在一个View中添加多个View?另一个View,带有View模型:MyControlViewModel...如果我只是添加View,它不会检测到它有一个具有适当名称的View模型。我怎样才能将它绑定(bind)到它?我尝试过使用不同的Bootstrap并使用诸如cal:Bind.Model="path/classname/mergeofthetwo"之类的东西。已尝试将其添加到主视图和用户控件(MyControlView)。我非常感谢有关此事的任何帮助。我几乎卡住了,我真的很想使用Caliburn.Micro:)最好的
我在WPF窗口中使用slider,我希望当用户单击slider轨道上的某处时,拇指会转到该确切位置。目前,当我点击某个地方时,拇指会指向那个位置,但不会正好那个位置。我怎样才能实现我想要的?编辑:一个更好地解释我想要什么的例子:如果拇指位于10并且我在100附近按下鼠标,我希望它跳到100(不通过其他值)。 最佳答案 您需要将IsMoveToPointEnabled设置为True:http://msdn.microsoft.com/en-us/library/system.windows.controls.slider.ismove
我检查了msdn。对于鼠标滚轮相关的事件,只有一个选项——UIElement.MouseWheel我想做的是监听鼠标滚轮向前(向上)和向后(向下)滚动事件。注意:不是单击中间的滚轮按钮。 最佳答案 没有,只有一个事件。当您查看MouseWheelEventArgs类时,有一个属性Delta。当滚轮远离用户旋转时,Delta为正,当滚轮朝向用户旋转时,Delta为负。 关于c#-WPF是否有鼠标滚轮上下滚动事件,我们在StackOverflow上找到一个类似的问题: