日期:2014-05-18  浏览次数:21103 次

winform设置透明度
请注意,这个窗体透明度不是设置一个窗体透明度,而是多个窗体的!


是这样的 MainForm 是主窗体,上面有一个button,点击button打开一个setForm的窗体,

在setForm窗体有一个设置透明度的 trackBar 控件。设置后的透明度我保存在配置文件中。config文件。

问题是,我设置好了透明度之后,如何让MainForm也立即更改为我刚设置的透明度!

我在MainForm窗体中有一个获取透明度的方法

public void GetBackInfo(){
  this.Opacity=从配置文件中获取到的透明度;
}

然后我在setForm中设置好透明度立即调用这个方法用于更新,

MainForm main = new MainForm();
main.getBakcInfo();

但却没更新.要关闭软件后才会是新的.

调用Refresh()无效!

请问如何在子窗体中设置好透明度或者背景图片在其他的窗体中能立即更改成为我当前的设置??

------解决方案--------------------
http://blog.csdn.net/renyouprince/article/details/3774170
------解决方案--------------------
this.Opacity=从配置文件中获取到的透明度;
这里具体是怎么写的。还有“设置后的透明度我保存在配置文件中”,这是什么时候保存的?
------解决方案--------------------
app.config中设置
XML code
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <!--程序透明度 0-100 透明到不透明-->
        <add key="Opacity" value="100"/>
    </appSettings>
</configuration>

------解决方案--------------------
探讨
MainForm main = new MainForm();
main.getBakcInfo();