【问题标题】:How can I prevent the user from resizing the silverlight out-of-browser window?如何防止用户调整 silverlight 浏览器外窗口的大小?
【发布时间】:2026-02-07 14:45:02
【问题描述】:

我有一个 silverlight 应用程序,它可以安装为 out-of-browser

我已经在 UserControl 中定义了高度和宽度。

我在 OutOfBrowserSettings.xml 文件中定义了相同的高度和宽度。

但用户仍然可以调整浏览器外框架窗口的大小。如何防止这种情况发生?

【问题讨论】:

    标签: silverlight resize height width out-of-browser


    【解决方案1】:

    我不想放弃窗口边框。这不漂亮,但这是我现在正在做的事情。

        Host.Content.Resized += new EventHandler(Content_Resized);
        ...
        void Content_Resized(object sender, EventArgs e)
        {
            if (IsRunningOutOfBrowser)
            {
                MainWindow.Width = 800;
                MainWindow.Height = 448;
            }
        }
    

    【讨论】:

      【解决方案2】:

      托管 Silverlight 应用程序的窗口在以正常权限运行时无法由应用程序控制,这将是一个安全问题。

      但是,如果您以提升的权限安装 OOB 应用程序,则可以更改窗口的镶边并定义自己的镶边。这将阻止调整大小(当然,除非您使用自定义 chrome 显式实现调整大小)。

      要更改 chrome 选项,请使用项目属性中的 OOB 设置。

      【讨论】:

        【解决方案3】:

        我不认为你可以。这似乎是“用户为王”的另一种选择。

        【讨论】: