设置资源字典出错了.kddcup2015解决思路路怎么解决

教育资源为主的文档平台
政治常错选择题精炼及做题方法指导
上传者:|上传时间:|45人阅读 |5次下载
1、送走硕果累累的十二五,迎来充满希望的十三五。2016是十三五开局之年,也是决胜全面小康的起步之年。下面对全面小康理解正确的是(&&)
A实现中华民族伟大复兴的中国梦就是全面建成小康
B是我国21世纪中叶将要实现的各族人民的共同理想
C全面建成小康社会是“四个全面”战略布局的战略目标
D是党在社会主义初级阶段的基本路线提出的奋斗目标
2、人民期盼有更好的教育,收入,医疗服务,优美环境。实现上述奋斗目标()
A坚持发展第一要义,奋力实现总体小康&&&&&&&&
&B着力保障改善民生,促进社会公平正义
C深化分配制度改革,不断增强居民收入&&&&&&&&
&D健全社会保障制度,提升人民幸福指数
3、为实现我们在巴黎气候变化大会上我们作出的承诺,我们国家应该()
A贯彻落实科学的发展观,实施可持续发展战略&
&B调整优化产业结构,推动经济转型
C低碳出行,宣传绿色化环保理念&&&&&&&&&&&&
&&D建立健全建设美丽中国的法律法规
4、每年三月,全国人大代表齐聚北京,一件件议案通过他们得以传达,一个个报告得到表决通过。这主要表明()
A国家的一切权利属于公民 &&&&&&
B全国人大代表具有立法权,决定权,监督权
C人民代表大会制度是我国的根本政治制度
&D人民代表大会是我国的最高权利机关
5、每年三月是我国两会召开的日子。两会期间,全国人大代表,政协委员都会紧紧围绕国家经济,社会发展等重大问题展开讨论,共商国是。这充分反映了(&&)
A人民代表大会制度是我国的基本政治制度&&&&&&&&&
&B全国人大和政协都是最高国家权力机关
C在我国,人民享有管理国家事务的权利&&&&&&&&&&&&
&D我党的工作宗旨是全心全意为人民服务
6、十二届全国人大常委会第十六次会议通过了刑法修正案。对此下列认识正确的有()
A国家的一切权利属于全国人大常委会&&
&B全国人大常委会享有立法权
C我国坚持人民代表大会制度&&&&&&&&&&
&D全国人大常委会是最高国家权利机关
7、近年来明星官员吸毒频频曝光,他们吸毒根源是(&&)
A个人信仰缺失,法制观念淡薄&&
B寻求精神刺激,借以激发灵感
C从众心理严重,盲目猎奇跟风&
&D逃避现实问题,缓解心理压力
8、为奖励著名科学家的杰出成就,我国多位科学家获得永久性小行星命名(&&)
A意味着中国已有科技大国一跃成为科技强国
B是中国科学家攀登世界高峰的又一标志
C显示出我国实施人才强国基本国策硕果累累
D是国际天文联合会史上具有开创意义的时间
9、文化科技卫生,三下乡活动(&&&&&)
A是精神文明成果的全面展示&&&&&&&
&B是丰富农村生活的响亮品牌
C是提高农民素质的重要展示 &&&&&&&
D是改变农村面貌的根本举措
10、 九三阅兵中的老兵方阵成为阅兵仪式的亮点。今天我们崇敬抗战老兵(&&)
A不畏强暴,血战到底的英雄气概&&&
B爱国敬业,富强文明的高尚情怀
C视死如归,宁死不屈的民族气节&&&
D百折不挠,坚忍不拔的必胜信念
11、吴轩想劝说爸爸同意他读职业学校,可以说那些理由(&&)
A 我的选择,你无权干涉&&&&&&&&&&
&B选择职业学校是我从自身实际考虑,做出的理性选择
C成功源于兴趣,有兴趣就会成功 &&
&D当前社会需要有一技之长的人才
12、日,一个将永载史册的日子。习近平主席同台湾方面领导人马英九在新加坡会面。这是1949年以来两岸领导人的首次会面。媒体评论称,80秒的握手,穿越了66年历史风雨。这次历史性会面注定要写入教科书这( &&&&&)
A印证一国两制方针完全正确&&&&&&&&
B对两岸关系具有里程碑意义
C表明两岸交往互动的层次提升 &&&&
&D 标志着祖国统一大业已经实现
13、你在马路上开车等红灯,车窗外冷不丁的冒出一个人,吵你鞠躬,等你给钱。但是最近杭州市民发现,这群车道乞讨者开始升级;拦车要钱,不给钱就趴在车头不在。拦车要钱的乞讨行为(&&)
A是在透支公共爱心&
B 带来交通安全隐患
C违背刑事法律要求&
D 扰乱社会公共秩序
14新修订的刑法规定对于医闹行为严重的要判三年以上七年以下的有期徒刑,医闹入刑(&&)
A可以从根本上消除医闹现象&&&&&&&&&&&&
&&B 有利于维护正常的医疗秩序
C有利于推动医疗纠纷的化解步入法制轨道&
D扰乱社会公共秩序
15&今年天价虾事件闹的沸沸扬扬,游客两桌吃了一万多块钱,而且店家还多写鱼的斤两,游客与店家理论,店家还打人,打了110也未能解决,最后被迫结账。此类消费欺诈事件产生的原因(&&)
A相关部门的执法力度不够,推脱不作为&&&&&&&&&&&
B 我国解决此类问题的法律观念淡薄
C消费者维权意识不强,被侵权后选择忍气吞声 &&&&&
D部分经营者诚信意识缺失,法律观念淡薄
16世界经济论坛说:到2050年,全球海洋中塑料的总重量讲超过鱼类总量。因此呼吁提醒人们注重对塑料制品的回收利用。面对塑料总重量超过鱼类的的可能性,应该(&&)
A加强环保理念,彻底禁止塑料制品&&&&&&&&&&&&&
B 宣传塑料危害,提倡使用环保产品
C完善环保立法,依法严惩塑料企业 &&&&&&&&&&&&
D公民依法监督,举报乱扔垃圾现象
17燃煤,机动车,工业过程和扬尘是四大污染来源。其中,燃煤排放对pm2.5的贡献比例高达31%,工业排放占21%。这说明消除雾霾应做到(&&&)
A绿色发展,减少工业生产&&&&&&&&&&&&&B 低碳出行,拒绝乘坐汽车
C深化改革,加快经济转型 &&&&&&&&&&&&D以人为本,杜绝扩建
18&去年是新疆自治区成立60周年,西藏自治区成立五十周年。新疆,西藏地区的发展变化表明( )
A我国坚持民族平等,团结,共同繁荣的基本原则&
B 民族区域自治制度是适合我国国情的根本政治制度
C&&我国坚持共同富裕原则,消除了各民族之间的差异 &&&&&&&&
D兄弟省无私援助是民族自治地方发展繁荣的关键
19随着互联网技术的不断发展,指尖上的公益,正迸发出强大的力量。2015年中国首个互联网公益日有205万人通过腾讯公益平台捐助1.279亿,公益项目涵盖了扶贫,助学,疾病救助,环境保护等各个领域。这说明( )
A人们参与公益的热情取决于活动便利程度&
B热心公益已成为全体社会成员的普遍共识
C人们参与公益活动的方式应做到与时俱进&&
D科技进步为人们参加公益活动提供了便利
20近年来,一些城市的市政设施频繁拆除重建,引发了人们对短命建筑,的质疑。因为短命建筑(&&)
A造成了巨大的 浪费,违背了勤俭节约的传统美德
B暴露了用权任性,损害了党和政府部门的形象
C加速了城镇化进程,进一步扩大了城乡发展差距
D折射了建筑行业之痛,反映了我国技术落后
21取消民生服务事项中繁文缛节和不必要的22项奇葩证明。取消奇葩证明有利于(&&)
A简化办事流程&&&&&&&&&&B提高政府服务效能
C降低群众办事成本&&&&&&D扩大公民政治权利
22每年的一月份都会召开国家科学技术奖励大会,获奖者必须是在当代科学技术前沿取得重大突破,通过科学技术创造了巨大经济效益或社会效益。这充分说明(&&)
A科学技术正成为第一生产力&&&&&B我国正在落实科教兴国战略
C公民智力成果权受到法律保护&&&&D承担责任必然获得相应报酬
23习主席在APEC会议上提出,亚太经合组织的21个成员,就好比是21只大雁。大雁一般都是成人字形飞翔,这比孤雁单飞节省71%的飞行力量,形成雁阵效应。对此理解正确的是()
A习主席文采好,比喻非常形象&&&&&&B发扬集体主义精神,团结合作
C说明个体的发展离不开集体的努力&&D集体利益和个人利益相互依存
24目前我国发展方式依然粗放,能源密集型产业偏重,单位GDP能耗约占世界平均水平的1.8倍,不仅远高于发达国家,也高于巴西,墨西哥发展中国家。这警示我们(&&)
A我国资源形势十分严峻&&&&&&&&&&B必须坚持节约资源的国策
C必须依靠科技提高资源利用率&&&&D要禁止开发利用宝贵资源
25&民族团结的花儿最鲜艳,民族团结的果实最甜蜜,民族团结的人民最幸福,民族团结的国家最强盛。在各民族共同团结奋斗之下,民族地区的经济社会发展实现了历史性跨越。这表明(&&)
A维护民族团结是多数公民义务&&&&B维护民族团结是一切工作中心
C我国是一个统一的多民族国家&&&&D民族团结是各族人民的生命线
26&国家主席习近平在亚非领导人会议上指出,面对新机遇,新挑战,亚非国家要守望相助,把握机遇,做同甘共苦,休戚与共的好朋友,好伙伴。此举(&&)
A有利于亚非国家之间的合作&&&&&&&B要求放弃国家利益维护地区利益
C符合合平与稳定这个主题的要求&&&D是坚持平等尊重,求同存异的表现
27对两岸领导人跨越66年的首次会面,必将载入两岸关系史册。对此理解正确的是(&&&)
A一国两制方针是解决祖国统一唯一方针&&&&
B两岸关系合平发展的基础是一国两制
C这表明两岸间的矛盾逐渐消除&&&&&&&&&&&&
D这次会面有利于积极推动祖国最终统一
28习主席在APEC会议上表示中国利用外资的政策不会变,对外商投资企业合法权益的保护不会变,为各国企业在华投资提供更好服务的方向不会变。这表明(&&)
A展示我国精神文明建设的成就&&&&&&&&&&&&B表明我国的综合国力不断地增强
C表明我国进一步加快走出去步伐&&&&&&&&&&D彰显我国对方开放的诚意和决心
29无论是APEC举行时油然而生的自豪,抗震救灾时勠力同心的驰援,扶贫救弱时自然流露的温情,还是彼此擦肩而过的善意一笑,老人跌倒时的伸手一扶,路见不平一声吼(&&&)
A充分体现了社会主义的优越性&&&&&&&&&&&&B是初级阶段基本路线的体现
C彰显了社会主义核心价值观&&&&&&&&&&&&&&D是坚持公平,维护正义的体现
30&党中央高度重视扶贫工作,打好扶贫攻坚战,从中感悟到(&&)
A中国共产党始终代表先进生产力的发展要求&&&&&&&
B实现人民同等富裕是社会主义的最终目标
C扶贫攻坚工作事关全面建成小康社会的成败&&&&&
D人民当家作主是中国特色社会主义的本质属性
材料分析类型题代表及做题方法
1怎么做类型题
①毫无限定。实现一个远大目标,常规角度
作为当代中学生,铭记历史,开创未来的正确做法应该有哪些?
展望十三五,谈谈你的个人行动
祖国强大,少年有责。请谈谈你将如何为祖国繁荣发展作出应有的努力
报效祖国是孝的提升,你打算如何为国家尽孝?
⑴树立远大理想,立志报效祖国
⑵积极承担社会责任,不断提升人生价值
⑶关注祖国发展,为国家发展建言献策
⑷弘扬中华民族传统美德,积极传递社会正能量
⑸积极参加社会实践活动,培养亲社会行为
②稍作限定,学习**精神事迹,先点题了解学习,宣传践行,再补充常规角度
中学生如何以实际行动弘扬焦裕禄精神,红旗渠精神,抗战精神……
为了向道德模范学习,请提出具体倡议
为了向身边好人学习,请向同龄人提出倡议
⑴认真深入学习,了解焦裕禄精神或好人事迹…………
⑵开展多种活动,宣传焦裕禄精神或好人事迹…………
⑶从小事做起,自觉践行焦裕禄精神或河南好人精神…………
⑷弘扬中华民族传统美德,积极传递社会正能量
⑸积极参加社会实践活动,培养亲社会行为
③具体限定,必须抓主语关键词
如何成为创新型少年?
如何维护民族团结
如何解决食品安全问题
如何避免校园暴力
如何维护国家安全
2评价****行为
①这是*****行为(一般可以从道德,法律,文明,正义,责任角度谈&&)
比如请评价车窗抛物行为?
⑴车窗抛物是违法交通法规的违法行为
⑵这是对自己和他人生命安全不负责任的行为
⑶这种行为败坏了社会风气,污染环境,影响市容
⑷造成交通安全隐患,容易引发交通事故
1---5&&C.BCD.ABD .C . C&&&&&&&&&&&6—10&BC. A.B. BC.&&ACD
11—15 BD。 ABC. ABD.BCD. ACD&&&&16—20&&B&&.C. A. D. AB
21—25 ABC. B.B. ABC. D.&&&&&&&&&&26—30&&A.D. D. C. C
15题.B项我国解决此类问题的法律严重缺失。
26题,C项改为求异存同.
版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!
阅读已结束,如果下载本文可
想免费下载本文?
赠获查字典积分换实物礼品
免大量免费文档可下载
辑创建文辑分享文档
此文档贡献者
文档浏览排行榜
政治常错选择题精炼及做题方法指导datagridview 在设计器中添加要显示的列和列标题后,不能显示数据了?该如何解决 - C#当前位置:& &&&datagridview 在设计器中添加要显示的列和列标题后datagridview 在设计器中添加要显示的列和列标题后,不能显示数据了?该如何解决&&网友分享于:&&浏览:110次datagridview 在设计器中添加要显示的列和列标题后,不能显示数据了?datagridview
在设计器中添加要显示的列和列标题后,原先可以在datagridview中显示的数据不能再显示了,是怎么回事啊?原先可以正确显示数据的代码如下: &
private void button1_Click(object sender, EventArgs e) &
DataTable dt = new DataTable(); &
//给datatable添加三个列 &
dt.Columns.Add(&序号&, typeof(String)); &
dt.Columns.Add(&产品名称&, typeof(String)); &
dt.Columns.Add(&备注&, typeof(String)); &
String str_line = String.E &
//读入文件 &
using (StreamReader sr = new StreamReader(@&..\..\a.txt&, Encoding.Default)) &
//循环读取所有行 &
while ((str_line = sr.ReadLine()) != null) &
String[] data = str_line.Split(',');
//一行一行的处理&
//新建一行,并将读出的数据分段,分别存入3个对应的列中 &
DataRow dr = dt.NewRow(); &
dr[0] = data[0]; &
dr[1] = data[1]; &
dr[2] = data[2]; &
//将这行数据加入到datatable中 &
dt.Rows.Add(dr); &
//将datatable绑定到datagridview上显示结果 &
this.dataGridView1.DataSource =&
}------解决方案--------------------
1)dataGridView1.AutoGenerateColumns =2) 列的DataPropertyName = 表的字段名
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有随笔 - 55&
文章 - 15&
trackbacks - 0
2012年10月
30123456789101315161920212526272829303112345678910
阅读排行榜
评论排行榜
本期提要:
&&&&&&&&因为需要在代码中修改TextBox的Style属性,但是我却把本来适用于TextBlock的Style赋值给了TextBox,这样导致了一个异常的弹出。开始以为是在ResourceDictionary中查找的方法不对,所以对Resource Dictionary进行了了解。就是本文的内容了。本文主要参考MSDN的教程,并佐以实例和自己的理解,希望对大家有所帮助。本章内容没有图例,所以我尽量把排版弄好一些。&&&
Resource Dictionary简介&&&&&&&&一言以蔽之,Resource Dictionary是放置资源的地方,以方便在其他地方进行引用。既然是字典,那么就应该是以键值对的形式存在。事实确实是如此,Resource Dictionary中的资源都有一个x:Key,其他的都是它的值。如果试图给Resource Dictionary添加一个没有Key的子元素,会抛出一个解析异常或者run-time异常。有两种例外的元素不需要Key,我们会在后面介绍。&&&&&&Resource Dictionary的常用的场景是在XAML中使用,在XAML中定义一个资源,在其他地方对其进行StaticResouce引用。在代码中使用也是可以的,这样可以允许我们在运行时对Resource Dictionary根据我们的设想进行相应的调整。&&&&&&为了对Resource Dictionary有个直观的理解,我们摘取了App.XAML文件中的代码进行讲解。&&&&&&
&1&&&&&&Application.Resources&&2&&&&&&&&&&ResourceDictionary&&3&&&&&&&&&&&&&&ResourceDictionary.MergedDictionaries&&4&&5&&&&&&&&&&&&&&&&&&!--&&6&&&&&&&&&&&&&&&&&&&&&Styles&that&define&common&aspects&of&the&platform&look&and&feel&7&&&&&&&&&&&&&&&&&&&&&Required&by&Visual&Studio&project&and&item&templates&8&&&&&&&&&&&&&&&&&&--&&9&&&&&&&&&&&&&&&&&&ResourceDictionary&Source="Common/StandardStyles.xaml"/&<span style="color: #&&&&&&&&&&&&&&/ResourceDictionary.MergedDictionaries&<span style="color: #&<span style="color: #&&&&&&&&&&&&&&!--&Application-specific&resources&--&<span style="color: #&<span style="color: #&&&&&&&&&&&&&&x:String&x:Key="AppName"&Dino-Dino&/x:String&<span style="color: #&&&&&&&&&&/ResourceDictionary&<span style="color: #&&&&&&/Application.Resources&<span style="color: #&&/Application&
&&&&&&&&&&&&这是一个典型的Resource,包括两个ResourceDictionary,并且这两个ResourceDictionary都没有Key,也没有其他名字。其中第2行的ResourceDictionary包含了一个Key值为&#8221;AppName&#8220;的x:String类型的子元素,这个Resource Dictionary叫做主要资源字典。第3行的意思是,我们第2行的ResourceDictionary还有一个外部的资源字典,合并在这里,这个外部资源字典的路径在第9行给出,第9行的资源字典叫做合并资源字典。&&&&&&如何使用这个Resource Dictionary 中的资源呢?
<span style="color: #&&&&&&&&&&&&&&TextBlock&x:Name="pageTitle"&Text="{StaticResource&AppName}"&Grid.Column="1"&IsHitTestVisible="false"&Style="{StaticResource&PageHeaderTextStyle}"/&<span style="color: #&
&&&&&&这里有两个地方都引用了资源,第一个是Text属性,引用了Key值为&#8221;AppName&#8220;的资源,还有一个Style的属性,引用了"Common\StandardStyle.xaml&#8221;文件中的PageHeaderTextStyle资源。&&&&&&"Common/StandardStyles.xaml"文件中放了微软为我们准备的各种常用的资源,打开这个文件的话,不难发现,这就是一个Resource Dictionary,里面有各种Style。
对Resource Dictionary有个大概的印象了,我们就可以详细地探索一下Resource Dictionary中到底有神马东西了。Resource Dictionary之进一步了解1. 包含的内容--------&&&&&&如果你打开"Common\StandardStyle.xaml&#8220;文件的话,你会发现里面有一堆的Style,不错,Style的共享是最常见的。下面的这个就是一个例子。
&1&&&&&&Style&x:Key="BaselineTextStyle"&TargetType="TextBlock"&BasedOn="{StaticResource&BasicTextStyle}"&&2&&&&&&&&&&Setter&Property="LineHeight"&Value="20"/&&3&&&&&&&&&&Setter&Property="LineStackingStrategy"&Value="BlockLineHeight"/&&4&&&&&&&&&&!--&Properly&align&text&along&its&baseline&--&&5&&&&&&&&&&Setter&Property="RenderTransform"&&6&&&&&&&&&&&&&&Setter.Value&&7&&&&&&&&&&&&&&&&&&TranslateTransform&X="-1"&Y="4"/&&8&&&&&&&&&&&&&&/Setter.Value&&9&&&&&&&&&&/Setter&<span style="color: #&&&&&&/Style&------&&&&& 另外还有 继承自FramworkTemplate的模板(包括ControlTemplate、DataTemplate)
&1&&&&&&DataTemplate&x:Key="StandardItemTemplate"&&2&&&&&&&&&&Grid&HorizontalAlignment="Left"&&3&&&&&&&&&&&&&&Border&Background="{StaticResource&ListViewItemPlaceholderBackgroundThemeBrush}"&&4&&&&&&&&&&&&&&&&&&Image&Source="{Binding&Image}"&Stretch="UniformToFill"/&&5&&&&&&&&&&&&&&/Border&&6&&&&&&&&&&&&&&StackPanel&VerticalAlignment="Bottom"&Background="{StaticResource&ListViewItemOverlayBackgroundThemeBrush}"&&7&&&&&&&&&&&&&&&&&&TextBlock&Text="{Binding&Title}"&Foreground="{StaticResource&ListViewItemOverlayForegroundThemeBrush}"&Style="{StaticResource&TitleTextStyle}"&Height="60"&Margin="15,0,15,0"/&&8&&&&&&&&&&&&&&&&&&TextBlock&Text="{Binding&Subtitle}"&Foreground="{StaticResource&ListViewItemOverlaySecondaryForegroundThemeBrush}"&Style="{StaticResource&CaptionTextStyle}"&TextWrapping="NoWrap"&Margin="15,0,15,10"/&&9&&&&&&&&&&&&&&/StackPanel&<span style="color: #&&&&&&&&&&/Grid&<span style="color: #&&&&&&/DataTemplate&------3.Storyboard4. Transform5. Metrix,Matrix3D6. Point上面的都没用过,所以也没例子。------7. 其他与UI相关的结构,如Thickness和CornerRadius。
<span style="color: #&&Thickness&x:Key="AppBarBottomBorderThemeThickness"&<span style="color: #,2,0,0&/Thickness&------8. 还有一些你自己定义的类型,转换为本地资源的东西。自定义类型必须有一个默认构造函数,并且在继承关系中不能有UIElement类。这个用到过,当时在怀疑为什么有些可以转成本地资源,有些不可以,原来是有这些道道啊。------9. XAML固有数据类型包括:x:Boolean -------区分大小写的。不能用x:Bool代替&&&&&&&&&x:String&&&&&&&&&&x:Double&&&&&&&&&x:Int32就这四个,示例如下:
<span style="color: #&&x:Double&x:Key="AppBarThemeMinHeight"&<span style="color: #&/x:Double&<span style="color: #&&x:Boolean&True&/x:Boolean&<span style="color: #&&x:String&x:Key="AppName"&Dino-Dino&/x:String&<span style="color: #&&x:Int32&x:Key="GamNanStyle"&<span style="color: #&/x:Int32&------10. 其他
<span style="color: #&&FontFamily&x:Key="SymbolThemeFontFamily"&Segoe&UI&Symbol&/FontFamily&<span style="color: #&&SolidColorBrush&x:Key="AppBarBackgroundThemeBrush"&Color="#E5000000"&/&2. x:Key&&&&&&大家还记得我们简介里面提到过的么?所有的资源都是一个键值对,x:Key就是我们的键,其他的东西就是值。不设置键值将会引发异常,这些大家都有印象了。不过人们都很关心例外的情况,这两种例外的情况是:Control元素 的Template属性和具有TargetType属性的Style元素.&&&&&&&第一种情况我暂时还没有碰到,不过第二种适用于Style的可以解释下,我们用个例子能更好地解释一下:
<span style="color: #&&&Style&x:Key="TextButtonStyle"&TargetType="Button"&<span style="color: #&&&&&&&&&&Setter&Property="MinWidth"&Value="0"/&<span style="color: #&&&&&&&&&&Setter&Property="MinHeight"&Value="0"/&<span style="color: #&&&&&&&&&&!--此处省略一些--&<span style="color: #&&/Style&&&&&&&&当我们在XAML文件中使用Button的时候,我们可以用StaticResource来引用这种Style
<span style="color: #&&Button&x:Name="btn1"&Style={StaticResource&TextButtonStyle}/&<span style="color: #&&Button&x:Name="btn2"/&&&&&&&如果我们这么做了,那么,btn1将是TextButton类型的,它的MInWidth属性是0, MinHeight属性是0. 而btn2将是默认类型,它的MinWidth和MinHeight属性将是其他值。&&&&&&如果我们的Style不使用Key的话,那么这种Style将适用于所有的TargetType。
<span style="color: #&&Style&TargetType="Button"&& &!--没有Key--&<span style="color: #&&&&&&&&&&Setter&Property="MinWidth"&Value="0"/&<span style="color: #&&&&&&&&&&Setter&Property="MinHeight"&Value="0"/&<span style="color: #&&&&&&&&&&!--省略--&<span style="color: #&&/Style&&&&&&&XAML文件中:
<span style="color: #&&Button&x:Name="btn3"/&<span style="color: #&&Button&x:Name="btn4"/&&&&&&&btn3, btn4的MInWidth属性都是0, MinHeight属性都是0。 这有点象CSS,如果不指定类型x:Class的话,将会适用于所有Targettype.现在又来了个btn5,&Button x:Name="btn5" Style ={StaticResouce DinoStyleButton}/&,假设我们有DinoStyleButton的话,那么btn5将不再是MinWidth属性为0,而是DinoStyleButton中的MinWidth中的值。&&&&&&所以说,你要让所有的Button都是一个类型的话,在Resource Dictionary中在Style中不要给它Key值就好了,如果你需要一个特殊的Style,StaticResource应用那个Key值的Style吧,少年。3.&直接资源和应用资源&&&&&&&我们一直在谈Resource Dictionary(资源字典)的问题,突然跳转到资源上来了。不奇怪,因为我们的资源字典是放在这两个资源Collection中的。&&&&&& 其实这两个概念从字面上就可以很好地理解。直接资源:在该页面上直接可以引用的资源。应用资源:应用级别的资源,所有的页面都可以引用。了解么?不了解也无所谓,直接资源一般放在某一个page.XAML文件中,在文件的开始就定义好,以便本页面可以直接引用。应用资源:一般放在App.XAML文件中。&&&&&&&&&&&&这是直接资源的示例:
&1&&Page.Resources&&2&&&&&&&&&&CollectionViewSource&3&&&&&&&&&&&&&x:Name="groupedItemsViewSource"&4&&&&&&&&&&&&&Source="{Binding&Groups}"&5&&&&&&&&&&&&&IsSourceGrouped="true"&6&&&&&&&&&&&&&ItemsPath="Items"/&&7&&8&&&&&&&&&&DataTemplate&x:Key="SmallDateTemplate"&&9&&&&&&&&&&&&&&Grid&Width="190"&Height="80"&Background="#421A5B22"&<span style="color: #&&&&&&&&&&/DataTemplate&<span style="color: #&&/Page.Resources&&&&&&&&&&&& 这个Page的资源中包含了两个元素,一个是CollectionViewSource,一个是DataTemplate,你或许会说,为什么CollectionViewSource没有Key?你这样是错的。呵呵,恭喜你,在Resource Dictionary中必须要包含Key的观念已经深植入你的意识中,这太好了。但是,这个元素并不在一个Dictionary中。。。&&&&&&你可以在MainPage.XAML中使用这些资源,但是你不能在Page2.XAML中使用。这就是直接资源的定义吧,你可以看到自己院子里面的东西,其他人却因为隔着围墙看不到里面的东西。(有逻辑么?貌似没有)&&&&&&而应用资源一般放在App.XAML中,并且放在Application.Resources中:
&1&&&&&&Application.Resources&&2&&&&&&&&&&ResourceDictionary&&3&&&&&&&&&&&&&&ResourceDictionary.MergedDictionaries&&4&&5&&&&&&&&&&&&&&&&&&!--&&6&&&&&&&&&&&&&&&&&&&&&Styles&that&define&common&aspects&of&the&platform&look&and&feel&7&&&&&&&&&&&&&&&&&&&&&Required&by&Visual&Studio&project&and&item&templates&8&&&&&&&&&&&&&&&&&&--&&9&&&&&&&&&&&&&&&&&&ResourceDictionary&Source="Common/StandardStyles.xaml"/&<span style="color: #&&&&&&&&&&&&&&/ResourceDictionary.MergedDictionaries&<span style="color: #&<span style="color: #&&&&&&&&&&&&&&!--&Application-specific&resources&--&<span style="color: #&<span style="color: #&&&&&&&&&&&&&&x:String&x:Key="AppName"&Dino-DailyTask&/x:String&<span style="color: #&&&&&&&&&&/ResourceDictionary&<span style="color: #&&&&&&/Application.Resources&<span style="color: #&&/Application&&&&&&&&&&你又要说了,&ResourceDictionary.MergedDictionaries&在Dcitionary中,没有Key,并且里面的&ResourceDictionary&也是没有Key的。额,你是对的,他们确实没有。微软告诉我们,他们不需要有,并且,里面的ResourceDictionary只能有一个Source,而且就足够了。4. 如何引用资源字典中的资源,引用顺序是如何的?&&&&&&&&为了解决这个问题,我打乱了MSDN中教程的顺序,从应用资源开始说起,这里面的道道不多,很简单,你了解了就easy to use了。1). 主要资源字典、合并资源字典、主题资源字典&&&&&如何引用?用StaticResource,之前我们都讲过了,这里就不赘述了。那么StaticResource是怎么查找这些资源的呢?我们有直接资源,有应用资源,应用资源中还有主资源和合并资源,这个顺序是如何?这些资源中可不可以有相同的key?&&&&&&&&我们已经知道了直接资源和应用资源,也了解了应用资源是应用级别的资源。而这三种资源字典都是应用资源中的概念,我再贴个代码让大家有个直观的了解:&&&&&&
&1&&&&&&Application.Resources&&2&&&&&&&&&&ResourceDictionary&&!--主要资源字典&Main&Dictionary--&&3&&&&&&&&&&&&&&ResourceDictionary.MergedDictionaries&&!--合并资源字典&Merged&Dictionary--&&4&&&&&&&&&&&&&&&&&&ResourceDictionary&Source="Common/StandardStyles.xaml"/&&5&&&&&&&&&&&&&&/ResourceDictionary.MergedDictionaries&&6&&7&&&&&&&&&&&&&&!--&Application-specific&resources&--&&8&&9&&&&&&&&&&&&&&x:String&x:Key="AppName"&Dino-DailyTask&/x:String&<span style="color: #&&&&&&&&&&/ResourceDictionary&<span style="color: #&&&&&&/Application.Resources&<span style="color: #&&/Application&&&&&&&主题资源字典不见了。。。它存在于我们的合并资源字典中,一般都是这么一个构成的方式,下面的代码是StandardStyle.XAML文件中的部分片段:
&1&&ResourceDictionary&2&&&&&xmlns="/winfx/2006/xaml/presentation"&3&&&&&xmlns:x="/winfx/2006/xaml"&&4&&5&&&&&&!--&Non-brush&values&that&vary&across&themes&--&&6&&7&&&&&&ResourceDictionary.ThemeDictionaries&&8&&&&&&&&&&ResourceDictionary&x:Key="Default"&&9&&&&&&&&&&&&&&x:String&x:Key="BackButtonGlyph"&&#xE071;&/x:String&<span style="color: #&&&&&&&&&&&&&&x:String&x:Key="BackButtonSnappedGlyph"&&#xE0BA;&/x:String&<span style="color: #&&&&&&&&&&/ResourceDictionary&<span style="color: #&<span style="color: #&&&&&&&&&&ResourceDictionary&x:Key="HighContrast"&<span style="color: #&&&&&&&&&&&&&&x:String&x:Key="BackButtonGlyph"&&#xE071;&/x:String&<span style="color: #&&&&&&&&&&&&&&x:String&x:Key="BackButtonSnappedGlyph"&&#xE0C4;&/x:String&<span style="color: #&&&&&&&&&&/ResourceDictionary&<span style="color: #&&&&&&/ResourceDictionary.ThemeDictionaries&&&&&&&主要字典可以包括其他键控资源,也可以包含一个MergedDictionary属性,你只能往这个属性中添加ResourceDictionary,添加的这个ResourceDictionary就叫做合并字典。&&&&&&合并字典(Merged Dictionary),它的目的就是为了使用户可以引用外部的文件扩充自己的资源。代码中也可以看出,我们可以使用StandardStyle.XAML中的资源服务本程序。合并字典只能由一个Source属性,并且不能有Key值。&&&&&&主题字典是一种特殊类型的合并字典,用于保存各种资源,具体资源取决于用户当前在其 PC 上使用的主题。例如,&#8220;轻&#8221;主题可能使用白色画笔,而默认主题可能使用黑色画笔。画笔会更改,但使用画笔作为资源的控件创作过程可能是相同的,只需引用一个主题资源。&&&&&&此处的每个
元素必须有一个 x:Key 值。该值是一个命名相关主题的字符串&#8212;例如,"Default" 或 "HighContrast&#8220;&&&&&&同样与合并字典一样,多次定义同一个键是合法的,只要在每个主题字典单元中是唯一的。事实上,这是一种特意的设计:每个主题字典应该有一组相同的键。否则,任何缺少某个键的主题都可能在加载该主题时导致问题。不同于合并字典,每个主题的定义顺序无关紧要。对于主题字典,要用于资源查找的活动字典始终在运行时确定。一般而言,查找逻辑基于活动主题到一个特定主题字典的 x:Key 的映射。&&&&&&了解了么?2). 资源的查找顺序:&&&&&&知道了这些字典了之后,我们有个级别的概念了,就好理解资源的查找顺序了,我看还是上个图吧,比较好理解一些&&&&&&用文字描述就是:先在自己的Resource里面查找,如果没有,向父类控件的Resource中查找,如果没有,向文件的根级别方向查找,一般就会到Page.Resource中去了,如果这里面依然没有,就会向Application.Resource中查找。如果到达了合并字典了,我们看到箭头是先到了Dictionary2, 而不是首先添加的Dictionary1,至于为什么,微软是规则制定者, 我不太清楚。3). 使用相同的Key&&&&&&&&&前面已经说了,在一个Dictionary中不能使用相同的Key,但是如果不在同一级别,那么这个规则是可以被打破的。什么叫不是一个级别?&&&&&&&&&直接资源和应用资源不在同一级别。&&&&&&&&&主要字典和合并字典和主题字典也不在同一级别。&&&&&&&&&不同的合并字典也不在同一级别。&&&&&&&&&不同的主题字典也不在同一级别。
&1&&2&&Application.Resources&&3&&&&&&ResourceDictionary&// 主要资源字典&4&&&&&&&&SolidColorBrush&Color="#d0157820"&x:Key="muddyBrush"/&//主要资源中可以有其他键控资源&5&&&&&&&&ResourceDictionary.MergedDictionaries&// 合并资源字典&6&&&&&&&&&&ResourceDictionary&Source="rd1.xaml"&/&//ResourceDictionary中不能有其他东西,只能由Source&7&&&&&&&&&&ResourceDictionary&Source="rd2.xaml"&/&&8&&&&&&&&/ResourceDictionary.MergedDictionaries&&9&&&&&&/ResourceDictionary&<span style="color: #&&&&/Application.Resources&4). 资源回退机制&&&&&&我们可以利用合并资源字典的查找顺序和使用相同键值这一特性来创建资源回退值的优先级顺序。比如说:rd1.xaml中有一个&
<span style="color: #&&Style&x:Key="DinoDinoStyleButton"&TargetType="Button"&&Setter&Property="BackgroundColor"&Value="#ffffffff"/&&&/Style&&&&&&&在我的MainPage.Xaml文件中我这么引用:
<span style="color: #&&Button&x:Name="DinoButton"&Style={StaticResource&DinoDinoStyleButton}/&&&&&&&如果我有其他要求的话,并且我不希望修改MainPage.Xaml文件,那么我可以根据合并字典的查找顺序在rd2.xaml中创建一个键值相同的Style:
<span style="color: #&&Style&x:Key="DinoDinoStyleButton"&TargetType="Button"&&Setter&Property="BackgroundColor"&Value="#"/&&&/Style&
&&&&&&这样就改变了,这就是我理解的回退值机制。&&&&&&为了保证回退机制可以使用,在主要字典中必须不能包含相同的键值。你懂的,如果那样的话,就会优先找懂啊主要字典中的键,永远也不会找到合并字典中去。&&&&&&这里有个文件可以让大家了解相关的主题字典:使用文本编辑器打开 \(Program Files)\windows kits\8.0\Include\winrt\xaml\design 中的 XAML 文件,可以看到其主题资源的定义。5). 杂项&&&&&1. &向前引用:一个资源必须定义了之后才能被引用。所以我们的资源一般放在接近开头的位置进行定义。&&&&&2. &UserControl比较特殊,UserControl 必须能够支持在自己的定义范围查找序列中查找该资源&#8212;,也就是说它不能访问应用资源。6). 在代码中使用资源字典&&&&&&使用Lookup方法(C++),下面是如何在应用资源里面查找相应的代码:&&&&&&
<span style="color: #&if(App::Current-&Resources-&HasKey(L"CaptionTextStyle"))<span style="color: #&&&&&&&&&&&&&{<span style="color: #&&&&&&&&&&&&&&&&&auto&style&=&safe_cast&Windows::UI::Xaml::Style^&(App::Current-&Resources-&Lookup("CaptionTextStyle"));<span style="color: #&&&&&&&&&&&&&&&&&//auto&style&=&safe_cast&Windows::UI::Xaml::Style^&(App::Application::Current-&Resources-&Lookup(L"TitleTextStyle"));<span style="color: #&&&&&&&&&&&&&&&&&if(style&!=&nullptr)<span style="color: #&&&&&&&&&&&&&&&&&textblock-&Style&=&<span style="color: #&&&&&&&&&&&&&&&&&<span style="color: #&&&&&&&&&&&&&}
&&&&&&这里又回到开头说的问题了,因为我把TargetType为TextBlock的Style赋值给了TextBox,所以造成了异常,所以在代码中进行操作的时候,一定要了解你的右值和左值是否对应。
&&&&&&在论坛里面问到了原因,但是还是把相关的Dictionary知识了解了一下,以前只知道随便用,现在大概了解它的机制了。把MSDN上的内容看懂了,又用自己的话描述一番,感觉还是挺清楚的。虽然东西有点多,但是还是很有帮助的。&&&&&&下一章的东西还在待定。。。
阅读(2554)}

我要回帖

更多关于 kddcup2015解决思路 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信