zoukankan      html  css  js  c++  java
  • WPF note on Container Cursor + winform 透明控件尝试补遗

    1 Wpf note

    新手入门WPF的时候可能会遇到我所遇到的白痴问题:为什么容器的Cursor属性无效?问题的描述可能是这样的:更改了Grid, Canvas等容器控件的Cursor属性后,发现鼠标在其上仍然是默认的Arrow。

    这是由于容器的背景默认为透明,而透明部分的事件是无法被捕获的。对于此问题,Cursor的改变依赖于QueryCursor事件,你会发现这个事件在控件被设置为透明时将无法触发。所以解决的方法很简单:为容器设置一个有效的背景色。

    2 winform透明尝试补遗

    上篇博文中提到“真正透明”控件在winform中的尝试,最后以失败告终,虽然结果不会改变,但忘记了谈论一种特殊的情况:尝试利用MDI制作透明控件。

    这个思路是:既然设置控件的Backgroud color只能透明到容器,而Form的transparency key则可以直接透明到桌面,则考虑使用MDI中包含多个设置指定transparency key的MDI children forms,并期待它们能够透明到主窗体(MDI parent),同时我们知道MDI容器的背景可以通过遍历controls集合获取到MDIClient实例中。

    然而经过尝试我们绝望的发现,作为MDI child的窗体,其transparency key属性将会失效——还是失败。

  • 相关阅读:
    GridView 应用貌似是个mm写的,值得尊敬!
    .net 时间函数
    .net 获取url的方法
    SaveGraphics
    asp网站页面上都是问号
    由于编码方式导致CSS样式表失效
    .net url乱码
    常用正则表达式
    解决realse版在加载toolbar后不正常退出的现象
    general error c1010070: Failed to load and parse the manifest
  • 原文地址:https://www.cnblogs.com/heroius/p/2025437.html
Copyright © 2011-2022 走看看