我在C#应用程序中使用图片框,我希望它覆盖网络浏览器的特定部分(YouTube上的用户名部分)。

我有一台21.5英寸的显示器,这对我来说是这样的:

但是,这对我的一位使用24英寸显示器的用户来说是这样的:

如您所见,由于该人的屏幕尺寸,图片框的位置已上移(我相信)

有没有办法确保它始终位于网络浏览器的该部分上或将其移至网络浏览器的该部分?

谢谢。

最佳答案

我坚信您的方法是错误的,并且会因为屏幕分辨率或尺寸更改,或者使用鼠标滚轮放大/缩小页面或其他原因而随时中断。这是不可靠的,并且通过在要隐藏的内容之上重叠另一个UI控件(如图片框或面板)来修补此问题,这完全是不安全且不可靠的。

我认为您有两个真正的选择是:

  • 您尝试解释页面内容,并从页面DOM中删除您不想显示给用户的信息(最终,HTML Agility Pack可以帮助此DOM解析和操作,但是我不确定您是否可以阅读WebBrowser的内容控件正在显示并向其中注入(inject)更改);
  • 使用YouTube APIs and Tools - .NET APIs加载要加载和显示的视频和详细信息,但使用Windows窗体应用程序中的特定UI元素呈现此信息,而无需使用浏览器显示正常的YouTube网站。

  • 第二种选择可能需要更多的工作,但更安全,如我所说,我不确定100%是否完全可行。您可以搜索HTML Agility Pack和Web浏览器控件,以查看是否有人曾经这样做过:)

    关于c# - 根据监视器尺寸移动图片框? C#,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7546390/

    10-13 05:35