原文:零元学Expression Blend 4 – Chapter 20 以实作案例学习Childwindow

本章将教大家如何运用Blend 4内建的假视窗原件-「ChildWindow」

ChildWindow常常运用在使用者登入、特殊警告或是其他强调式的需求功能

?

本章将教大家如何运用Blend 4内建的假视窗-「ChildWindow」

ChildWindow常常运用在使用者登入、特殊警告或是其他强调式的需求功能

?

就是要让不会的新手都看的懂!

?

最近公司需要我做一个可以让客户点击後看完资料再关闭的网页功能

完成後,我就顺便把教学也写上

(为了利益回避,以及日後不必要的麻烦,本章范例已经简化了很多东西,只留下与相关的图片及功能)

?

<假视窗-ChildWindow>

而为什麽说它是假视窗呢?

以网页为例,点击出现ChildWindow後,你的工作列并不会出现视窗钮

可以看到,在工作列上还是只有一个IE视窗

?

而且它只能存在於Sliverlight的范围内:

以Iframe的方式嵌入网页内的Sliverlight为例,ChildWindow并不能移动超过Sliverlight的范围

?

?

?

01

首先,我们来建立一个新的项目

?

选择ChildWindow

?

如何建立新的项目,先前的教学已经有介绍噜!(复习请点)

?

02

可以看到在ChildWindow直接内建一个关闭和两个Button控制项

(因为本范例不需要Button,所以我把它删掉)

?

在ChildWindow的Properties->Common Properties->Title可以更改想要显示的名字

?

03

调整成适当大小後,我们要来制作内容

为了要放入图片及文字叙述,需要切版面,请运用在Gird章节学到的版面配置来切版面

?

切好以後放入Image与TextBlock,大小设定为Auto、Margin各为5

应该会像下图

?

?

04

第一阶段初步完成了,我们来看看Xaml

		   1: <sdk:ChildWindow    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

		   2:     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

		   3:     xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"    

		   4:     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 

		   5:     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 

		   6:     mc:Ignorable="d"    x:Class="MokeyCwSample.ImageChildWindow"

		   7:     Title="Hotel"

		   8:     Width="300" Height="200" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">

?

我们复制最重要的x:Class="MokeyCwSample.ImageChildWindow"内的ImageChildWindow(就是你为ChildWindow命名的档名),等等要使用

?

接着,回到MainPage.Xaml

一样先放入一个物件(范例放置的是一张图片)

在选取Image的状态下,点选Prpperties->Event会出现一长串的事件状态

?

在事件状态MouseLeftButtonDown的输入栏点两下->进入MainPage.cs

?

如果你是纯视觉设计人员到.cs请不要害怕,我们只要加入短短的两行就大功告成了!

请在下列位置

?

打上这两行

		   1: ImageChildWindow dlg=new ImageChildWindow();

		   2:     dlg.Show();

?

只要把ImageChildWindow改成你自己命名的ChildWndow档名就大功告成啦~

?

至於这边程式怎麽来的,就不多作介绍噜!

(小猴子是设计起手的,如果想看更深入的程式教学,请看Ouch@点部落,也有影片教学唷!)

?

按下F5,来看看你的成果~

?

小秘诀:

你可以在点选ChildWindow状态下使用Prpperties->Brush->OverlayBrush

调整ChildWindow开启时背景遮盖的颜色喔!

?

?

?

?

?

附上范例专案:

?

?

本篇的教学就到此。

?

?

?

?

(若有任何错误的地方,请各位前辈或同好能不吝指教,小女子都会虚心接受;若是你喜欢我的教学,请给我点鼓励,谢谢。)

?

?

?

一步一步迈向HIE之路

喜欢我文章请推我一下或给我个回应,你的鼓励会给我无限的动力喔!

若是您有其他问题或是特别需要,请在文章回应处留言,我会尽快回覆您

 

零元学Expression Blend 4 &ndash; Chapter 20 以实作案例学习Childwindow的更多相关文章

  1. 零元学Expression Blend 4 &ndash; Chapter 21 以实作案例学习MouseDragElementBehavior

    原文:零元学Expression Blend 4 – Chapter 21 以实作案例学习MouseDragElementBehavior 本章将教大家如何运用Blend 4内建的行为注入元件「Mou ...

  2. 零元学Expression Blend 4 &ndash; Chapter 43 如何指定Childwindow PopUp位置

    原文:零元学Expression Blend 4 – Chapter 43 如何指定Childwindow PopUp位置 有网友询问我有关Childwindow是否能指定弹出位置? 其实只要透过小小 ...

  3. 零元学Expression Blend 4 - Chapter 46 三分钟快速充电-设定Margin的小撇步

    原文:零元学Expression Blend 4 - Chapter 46 三分钟快速充电-设定Margin的小撇步 如果需要经常的使用某一项工具,总会希望能够更快速的使用各项设定达到效果 今天要介绍 ...

  4. 零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下)

    原文:零元学Expression Blend 4 - Chapter 44 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(下) 抱歉久等了!!!! 终於到了动画MenuBar ...

  5. 零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中)

    原文:零元学Expression Blend 4 - Chapter 41 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(中) 我们接着进行动画MenuBar的制作 接续着上 ...

  6. 零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上)

    原文:零元学Expression Blend 4 - Chapter 40 Flash做的到的Blend也可以!轻松制作拥有动画的MenuBar!(上) 一直以来都有人拿Flash的动画问我Blend ...

  7. 零元学Expression Blend 4 - Chapter 39 虾米?!同款?不同师傅!告诉你Visible、Hidden与Collapsed的差异!

    原文:零元学Expression Blend 4 - Chapter 39 虾米?!同款?不同师傅!告诉你Visible.Hidden与Collapsed的差异! 由此可知 Hidden为隐藏项目,但 ...

  8. 零元学Expression Blend 4 - Chapter 36 来玩捉迷藏吧!!!看看ScrollBar的Disabled与Hidden之差异

    原文:零元学Expression Blend 4 - Chapter 36 来玩捉迷藏吧!!!看看ScrollBar的Disabled与Hidden之差异 本次要针对Disabled以及Hidden作 ...

  9. 零元学Expression Blend 4 - Chapter 18 用实例了解互动控制项「CheckBox」II

    原文:零元学Expression Blend 4 - Chapter 18 用实例了解互动控制项「CheckBox」II 延续上一章的CheckBox教学,本章将以实作继续延伸更灵活的运用CheckB ...

随机推荐

  1. [NPM] Create a node script to replace a complex npm script

    In this lesson we will look at pulling out complex npm script logic into an external JavaScript file ...

  2. Qt 连接MySQL数据库(很多相关文章)

    今天想试试Qt如何连接数据库的. 谁知怎么写完了提示driver not loaded我就郁闷了. 我自己是 VS2010 + Qt4.8.4 + MySQL5.1 的环境 网上查到是 C:\Qt\4 ...

  3. 递归(c++)(转)

    1.什么是递归函数(recursive function) 递归函数即自调用函数,在函数体内部直接或间接地自己调用自己,即函数的嵌套调用是函数本身. 例如,下面的程序为求n!: long fact(i ...

  4. Windows应用程序的消息处理机制

    (1)操作系统接收到应用程序的窗体消息,将消息投递到该应用程序的消息队列中. (2)应用程序在消息循环中调用GetMessage函数从消息队列中取出一条一条的消息. 取出消息后,应用程序能够对消息进行 ...

  5. 一段node代码的解读

    path.join(path.dirname(__dirname), platform); __dirname:全局变量,变量获取当前模块文件所在目录的完整绝对路径 path.dirname():返回 ...

  6. WindowsService - 开发遇到的问题

    1.Windows服务安装 通过cmd运行指令安装Windows服务: 安装方法:运行cmd,以InstallUtil.exe 来运行 Windows服务程序. 如果是Release模式的话,直接在c ...

  7. Spring boot+RabbitMQ环境

    Spring boot+RabbitMQ环境 消息队列在目前分布式系统下具备非常重要的地位,如下的场景是比较适合消息队列的: 跨系统的调用,异步性质的调用最佳. 高并发问题,利用队列串行特点. 订阅模 ...

  8. phpcms视图查询数据

    {pc:get sql="SELECT * FROM phpcms WHERE id in ($id) ORDER BY listorder ASC LIMIT 0, 1--"re ...

  9. 推荐一些C#相关的网站和书籍

    1.http://msdn.microsoft.com/zh-CN/ 微软的官方网站,C#程序员必去的地方.那里有API开发文档,还有各种代码.资源下载. 2.http://social.msdn.m ...

  10. Android官方教程翻译(4)——启动另一个Activity

    Starting Another Activity 启动另一个Activity PREVIOUSNEXT THIS LESSON TEACHES YOU TO 这节课教你 1.   Respond t ...