Tag: 用户界面

我应该将VB.net或C#用于桌面应用程序

即时通讯来自unix / server / c ++ / java背景,没有GUI经验我需要构建Windows GUI应用程序,我需要快速构建它我被告知.net系列是这样的工作的确切事情。 但是有VB.net和c#应该选择哪种更快更好的工作呢? 没有教学用户安装和部署最终产品会更容易

如何在程序执行时拥有控制台?

我正在尝试编写一个程序,它在控制台或GUI模式下工作,具体取决于执行参数。 我设法编写以下示例代码: using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; using System.Runtime.InteropServices; namespace wfSketchbook { static class Program { [DllImport(“Kernel32.dll”)] [return: MarshalAs(UnmanagedType.Bool)] private static extern bool AttachConsole(int processId); [DllImport(“Kernel32.dll”)] [return: MarshalAs(UnmanagedType.Bool)] private static extern bool AllocConsole(); [DllImport(“Kernel32.dll”)] [return: MarshalAs(UnmanagedType.Bool)] private static extern bool FreeConsole(); private const int ATTACH_PARENT_PROCESS = -1; /// /// The main entry […]

如果用户正在键入,则延迟KeyUp操作(C#)

我有一个在用户在搜索框中输入时调用的函数。 我想在实际执行函数之前等待用户完成输入。 我知道如何在超时的JavaScript中轻松实现这一点,但我如何在C#中做同样的事情? 另外,在我假设用户输入完成之前,我应该等多久? 100ms的?

快速显示/隐藏WinForms GUI C#的方法

我正在创建一个有线程的应用程序。 我将GUI(Announce:Form)作为单独的线程启动。 那个窗口非常简约,只有一个输入框和一个按钮。 在另一个线程上将运行Tcp客户端,当它从TcpServer获取信息时,它应该传递它进入该输入框并显示gui(和最顶层的窗口)。 几秒钟之后,gui应该隐藏自己并等待另一个tcp msg,依此类推。 public void setTextBox(string varText) { if (InvokeRequired) { textBox.BeginInvoke(new textBoxCallBack(setTextBox), new object[] {varText}); } else { textBox.Text = varText; } } 此代码用于从Tcp线程填充textBox。 现在唯一的问题是让窗口显示并正确隐藏。 一直在尝试许多解决方案,总是出现问题。 喜欢: private void windowStateChange(string varState) { if (InvokeRequired) { Invoke(new WindowStateChangeCallBack(windowStateChange), new object[] {varState}); } else { if (varState == “Hide”) { //Hide(); // TopMost […]

control.Show和BringToFront有什么区别?

Show / Hide和BringToFront / SendToBack有什么区别? 在哪种情况下我们应该使用一对而不是另一对?

无法在辅助监视器中创建WPF窗口

我正在努力在应用中实现一些类似Chrome的标签function,并且在使新实例正确生成时遇到一些麻烦。 我已经完成了很多搜索和迭代各种解决方案,但还没有能够在第二台显示器上生成一个新窗口。 这是使用线程: 打开文件 将当前选项卡拖到其他监视器 新的应用程序实例在其中设置了该选项卡,在用户将选项卡拖动到的位置生成。 断开连接在步骤3中。新实例始终在主监视器上生成。 所以,一些代码可以扩展问题。 namespace app { public class AppView { public void OpenInNewWindow() { // Create a new viewmodel var appViewModel = new AppVM(); //// On my machine this returns the correct screen “DISPLAY2”. The Top and Left properties are 0 and 1680, respectively. var targetScreen = Screen.FromPoint(System.Windows.Forms.Cursor.Position); ////So we […]

用于排序对象列表的算法

假设您有一个对象列表。 用户在工作时主要使用所有对象。 如何订购对象列表,以便列表适应订单,用户主要使用? 您可以使用什么算法? 编辑:许多答案建议计算对象的使用次数。 这不起作用,因为所有对象的使用量相同,只是顺序不同。

使用按钮大小制作背景图像比例

我正在尝试将一些背景图像添加到我的Win Forms应用程序中的几个按钮。 这三个图像的大小不同(即像素尺寸不匹配,一个是128×128,另一个是256×256)。 我需要按钮的大小相同(否则GUI非常不对称)。 在不更改实际图像文件的情况下,如何使用按钮大小来缩放图像? 我已经尝试创建自己的类,并为按钮resize事件添加事件处理程序,但这似乎不起作用。 我的代码: class CustomButton : Button { internal void CustomButton_Resize( object sender, EventArgs e ) { if ( this.BackgroundImage == null ) { return; } var pic = new Bitmap( this.BackgroundImage, this.Width, this.Height ); this.BackgroundImage = pic; } } 并以forms: this.buttonOne.Resize += new System.EventHandler(this.buttonOne.CustomButton_Resize); 忘记提及,上面的代码根本没有调整图像的大小。 按钮仍需要具有不同的尺寸才能完全显示图像。

为工作流应用程序推荐设计模式

我正在开发一个用户可以执行任务/工作流的应用程序。 每个任务都由要执行的操作队列组成。 我希望能够在工作流程启动后能够输入用户。 例: 任务开始 Action1启动 Action1结束 Action2启动 Action2结束 Action3需要用户输入(UI打开窗口以获取用户输入) Action3获取用户输入 Action3开始了 Action3结束 任务结束 我正在开发这个C#,我知道Workflow Foundation和C#中的任务。 它们可能有我需要的东西,但我也有兴趣听到从头开始这样做的设计模式。

在WPF中显示动画gif

我希望在我的XAML中显示动画gif,例如loading …,因为我的程序正在进行中。 我发现这在WPF中不能轻易完成,因为我加载了我的Gif并且它只显示了第一帧。 在WPF中显示动画的最佳方法是什么?