c# - 如何使用代码设置 Windows 窗体窗体的 StartPosition?

标签 c# .net winforms

有没有办法使用代码设置 Windows 窗体窗体的 StartPosition?似乎无论我尝试什么,都会导致 StartPostion 成为默认设置。

这是我要在表单中显示的内容:

    public DealsForm()
    {
        InitializeComponent();
        this.StartPosition = FormStartPosition.CenterParent;
    }

这是我正在做的显示表单的操作:

    private void nvShowDeals_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
    {
        DealsForm frm = new DealsForm();

        frm.DataSource = this.Deals;

        frm.Show(this);
    }

我已经尝试在上述每种方法中添加以下内容,但无济于事:

this.StartPosition = FormStartPosition.CenterParent;

如果我通过 Property Editor 设置它...它会完美运行,但我真的想通过代码来完成。

应该是一个明智的选择......但对于我的生活我似乎无法弄清楚......也许我需要更多的咖啡因。

更新:

如果我执行 ShowDialog() 并传递给它的父对象,它就可以工作……但我真的不想将它显示为对话框。

最佳答案

也许你并不孤单。也许你没有疯。阅读此内容(Microsoft Connect 客户反馈):

Windows Form StartPosition property only works for .ShowDialog method and not for .Show method

客户:“Windows 窗体 StartPosition 仅适用于 .ShowDialog 方法,不适用于 .Show 方法。注意:我还附上了简单的代码和结果图像。”

MS:“不幸的是,我们无法在未来的版本中修复这个特定问题,因为这里的修复将是对 WinForms 1、1.1 和 2 行为的重大改变”

关于c# - 如何使用代码设置 Windows 窗体窗体的 StartPosition?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/225741/

相关文章:

.net - 在 .NET 中写入日志 - 权限问题

c# - Windows Phone 8 上的 VariableSizedWrapGrid

c# - 图片按钮的制作方法

c# - 简化配置对话框构建 .NET

c# - 如何在单个 LINQ 查询中使用 Group By、Sum 和 Contains?

c# - ASP.NET:发布网站不发布资源文件夹

c# - 将包含非表格内容的完整 MVC View 导出到 Excel

c# - "does not contain a definition...and no extension method.."错误

C# - 更改任务栏的图标

c# - 发布后人们是否可以访问源代码?