0

我有一个 VB.NET 程序,我在其中使用 WebBrowser 控件来模拟时间表表单。对于数据输入,我使用了位于 WebBrowser 控件顶部的 DateTimePicker 控件,我已将其编程为在单击 WebBrowser 控件时移动到 WebBrowser 控件中表格单元格的顶部。(如果你想问我为什么不使用 DataGridView,那是为了格式化)

我的问题是,我想将 WebBrowser 的某些部分(标题、滚动条)视为位于 DateTimePicker 之上,尤其是在用户滚动 WebBrowser 时。我的想法是以某种方式为 DateTimePicker 提供一个矩形,使其仅绘制该区域内的控件部分。不幸的是,我对 .NET 几乎是全新的(但不是一般的编程),在谷歌搜索了半天之后,我仍然不知道该怎么做。

有谁知道如何做到这一点并且可以告诉我/指向我可以告诉我如何的地方?

4

2 回答 2

2

我认为您正在寻找Control.Invalidate方法。

但是在重新阅读您的问题后,我不太确定。也许您正试图让 DateTimePicker 被 WebBrowser 控件的边框剪裁……在这种情况下,您需要确保将 DateTimePicker 添加到 WebBrowser 的 Controls 集合中。

我通过创建一个带有 WebBrowser、DateTimePicker 和 Button 的表单来运行一个简单的测试。将此代码放在按钮的 Click 事件中:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    WebBrowser1.Controls.Add(DateTimePicker1)
End Sub

如果您进行设置以使 DTP 延伸到 WebBrowser 的边缘,您会看到单击按钮后它会被剪裁。它移动的原因是它相对于它的容器定位,一旦你单击按钮,它就变成了 WebBrowser。

于 2009-02-17T02:20:45.890 回答
0

JeffK:我刚刚尝试将 DTP 添加到 WebBrowser 的控件集合中,但 DTP 仍然显示在 WebBrowser 的滚动条和表格标题之上(表格标题是固定位置的 HTML 元素)。你有什么想法可以防止这种情况发生吗?

肖恩:不,在你提到它之前,我实际上从未听说过 WPF。你有什么好的链接可以让我了解更多关于它/如何使用它吗?

于 2009-02-17T14:11:34.400 回答