我有一个VB.NET程序,我正在使用WebBrowser控件来模拟时间表表单。对于数据输入,我使用位于WebBrowser控件顶部的DateTimePicker控件,当我单击WebBrowser控件时,我已将其编程为在WebBrowser控件中移动到表格单元格的顶部。 (如果你想问为什么我没有使用DataGridView,那就是出于格式化的目的)
我的问题是我想要将WebBrowser(标题,滚动条)的部分视为在DateTimePicker之上,特别是在用户滚动WebBrowser时。我的想法是以某种方式为DateTimePicker提供一个矩形,使其仅绘制该区域内控件的一部分。不幸的是,我几乎是.NET的新手(但不是一般的编程),在用了半天的谷歌搜索后,我仍然不知道该怎么做。
有没有人知道如何做到这一点,并可以告诉我/指向我哪里告诉我如何?
答案 0 :(得分: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。
答案 1 :(得分:0)
JeffK: 我只是尝试将DTP添加到WebBrowser的控件集合中,但DTP仍然显示在WebBrowser的滚动条和表头之上(表头是固定定位的HTML元素)。你有任何想法如何防止这种情况发生吗?
肖恩: 不,在你提到它之前,我实际上从未听说过WPF。您是否有任何良好的链接,我可以在哪里了解更多关于它/如何使用它?