WPF FileFolderDialog 和弹出子窗口的一些问题
摘要:本文主要是WPF中 FileFolderDialog的相关问题,补充了关于在父窗口弹出子窗口,以及子窗口的相关属性(Data Binding)和命令绑定(Delegate Command)问题,里面还有关于如何使用读写xml文件内容的方法。
需要注意的地方:
(1)对于每一个窗口(父窗口和子窗口),如果涉及到Data Binding相关问题的时候,均需要设置其对应的DataContext(一般为其ViewModel);
(2)对于未在构造函数中初始化的属性,需要在定义的时候进行实例化(如下:),否则将无法使用该属性对象;
private Condition _queryConditions=new Condition(); //这里的创建实例对象很重要 public Condition QueryConditions
{
get { return _queryConditions; }
set
{
queryConditions = value;
this.RaisePropertyChanged("QueryConditions");
}
}
(3)相对路径的使用如下:
private void AddPacsNode()
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"..\..\Data\PacsConfig.xml"); //相对路径
//xmlDoc.Load(@"C:\Users\Administrator\Documents\Visual Studio 2015\Projects\Day5\TestOpenFileDialog\TestOpenFileDialog\Data\PacsConfig.xml"); // 绝对路径
XmlNode root = xmlDoc.SelectSingleNode("PACS"); //查找<PACS>
XmlElement xe1 = xmlDoc.CreateElement("PacsNode"); //创建一个<PacsNode>节点
XmlElement xesub1 = xmlDoc.CreateElement("AETitle");
xesub1.InnerText = TempDataView.AETitle; //设置文本节点
xe1.AppendChild(xesub1); //添加到<book>节点中
XmlElement xesub2 = xmlDoc.CreateElement("HostIP");
xesub2.InnerText = TempDataView.HostIP;
xe1.AppendChild(xesub2);
XmlElement xesub3 = xmlDoc.CreateElement("Port");
xesub3.InnerText = TempDataView.Port;
xe1.AppendChild(xesub3);
XmlElement xesub4 = xmlDoc.CreateElement("HostName");
xesub4.InnerText = TempDataView.HostName;
xe1.AppendChild(xesub4);
root.AppendChild(xe1); //添加到<bookstore>节点中
xmlDoc.Save(@"..\..\Data\PacsConfig.xml"); //相对路径
this.LoadData();
}
相关代码地址:http://pan.baidu.com/s/1bpwuJi3
WPF FileFolderDialog 和弹出子窗口的一些问题的更多相关文章
- pyqt5对用qt designer设计的窗体实现弹出子窗口的示例
pyqt5对用qt designer设计的窗体实现弹出子窗口的示例 脚本专栏 python 1. 用qt designer编写主窗体,窗体类型是MainWindow,空白窗口上一个按钮.并转换成mai ...
- fancybox 关闭弹出窗口 parent.$.fancybox.close(); 无反应 fancybox 关闭弹出窗口父页面自动刷新,弹出子窗口前后事件
当我们在父页面使用 fancybox 弹出窗口后,如果想自己手动关闭,则可以 function Cancel() { parent.$.fancybox.close(); } 如果关闭没有反应,最好看 ...
- WPF:设置弹出子菜单的是否可用状态及效果
需求: 设置弹出子菜单(二级)项仅首项可用,其他项均不可用:不可用是呈灰色效果. 注: 菜单项都是依据层级数据模板.具体格式如下: StackBlock{TextBlock{Image}.TextBl ...
- JS弹出子窗口
目的 在一个主窗口中,点击一个链接, 弹出一个子窗口 , 父窗口保留 在子窗口中点击关闭, 关闭子窗口. 子窗口的位置位于屏幕的中间 实现 main.html <!DOCTYPE html> ...
- asp.net下用js实现弹出子窗口选定值并返回
对应上一篇博客代码: 父页面: <head runat="server"> <meta http-equiv="X-UA-Compatible" ...
- WPF 解决弹出模态窗口关闭后,主窗口不在最前
本文告诉大家如何解决这个问题,在 WPF 的软件,弹出一个模态窗口.使用另一个窗口在模态窗口前面.从任务栏打开模态窗口.关闭模态窗口.这时发现,主窗口会在刚才使用的另一个窗口下面 这是 Windows ...
- 2019-6-23-WPF-解决弹出模态窗口关闭后,主窗口不在最前
title author date CreateTime categories WPF 解决弹出模态窗口关闭后,主窗口不在最前 lindexi 2019-06-23 11:48:38 +0800 20 ...
- PyQt(Python+Qt)学习随笔:在父窗口中弹出子窗口无法显现的问题
在学习和测试PyQt相关部件功能的时候,老猿经常是不同的窗口新建一个类,再新建一个Application来使用这个窗口类进行测试. 为了减少应用框架代码的重复开发,老猿决定采用主窗口叠加测试窗口的模式 ...
- DevExpress第三方控件使用实例之ASPxPopupControl弹出子窗体
弹出页面控件:ASPxPopupControl, <dxpc:ASPxPopupControl ID="popubCtr" runat="server" ...
随机推荐
- NSTimer、 NSTask、 NSThread 和 NSRunloop 之间的区别
NSTimer是一个计时器对象,方法调用在对未来的选择对象. NSThread是一个线程类. 也就是创建一个线程. NSTask类是一个过程,一种方式运行程序从您的其他程序. NSOperation是 ...
- 自己编写的基于VC++6.0的串口调试软件,并贡献源程序!
自己编写的基于VC++6.0的串口调试软件源程序! 程序下载链接: 点击打开链接
- Foxmail
我们在“POP3/SMTP服务”前面打钩,这样我们的QQ邮箱设置已经完成了,我们就可以在foxmail客户端上QQ邮箱了 QQ邮箱的POP3与SMTP服务器是什么? QQ邮箱 POP3 和 SMTP ...
- linux centos6 NAT 端口转发
有很多时候我们为了安全,需要将例如数据库服务器放到内网中.但是有些时候又系统给外网开一个端口,这时就可以利用外网的服务器进行一个端口转发.今天我们以centos6 为例进行端口转发配置. 首先vi / ...
- php删除最后一个字符
原字符串1,2,3,4,5,6, 去掉最后一个字符",",最终结果为1,2,3,4,5,6 结合运用substr和strlen两个函数实现. 代码: $str = "1, ...
- Hive权限介绍
一.开启权限 眼下hive支持简单的权限管理,默认情况下是不开启.这样全部的用户都具有同样的权限.同一时候也是超级管理员.也就对hive中的全部表都有查看和修改的权利,这样是不符合一般数据仓库的安全原 ...
- 开发腾讯移动游戏平台SDK ios版Ane扩展 总结
本文记录了在开发 腾讯移动游戏平台SDK(MSDK) ios版Ane扩展 过程中所遇到的问题 文中非常多问题都是基础的问题.对object c和xcode配置了解不深入导致的.(没办法,开发ane的程 ...
- 一个仿 github for windows 及 windows 8 的进度条
https://github.com/wly2014/ProgressBar
- innodb_strict_mode=1
从MySQL5.5.X版本开始,你可以开启InnoDB严格检查模式,尤其采用了页数据压缩功能后,最好是开启该功能.开启此功能后,当创建表(CREATE TABLE).更改表(ALTER TABLE)和 ...
- window.top、window.parent
iframe和frameset中可能会用到window.parent.window.top 其中window.parent是相对于打开子页面的当前js所在页面的层级: 例如:a页面中包含一个ifram ...