Windows运维之新增控件Flyout
诗诗 2018-03-19 来源 :网络 阅读 977 评论 0

摘要:本系列Windows运维中将给大家系统的介绍一些 Windows 8.1新增控件,看完这系列文章会让你对新增的控件有更加清晰的理解和运用。

本系列Windows运维中将给大家系统的介绍一些 Windows 8.1新增控件,看完这系列文章会让你对新增的控件有更加清晰的理解和运用。

 

本篇为大家介绍Flyout 控件,Flyout 属于一种轻量级交互控件,可以支持信息提示或用户交互。与传统Dialog 控件不同的是Flyout 控件可通过直接点击对话框外部区域忽略。

Flyout 控件一般常与Button 结合使用,所以Button 控件默认增加了Flyout 属性,当使用Flyout 属性后,点击Button 时就会自动显示Flyout 内容,如下代码所示:

<Button Content="Delete Files">

    <Button.Flyout>

        <Flyout>

            <StackPanel>

                <TextBlock FontSize="15" Text="All the files will be deteled, Are you sure?" />

                <Button Content="Yes, delete all!"/>

            </StackPanel>

        </Flyout>

    </Button.Flyout>

</Button>

在Flyout 中仍然可以按需要添加各种控件,例如TextBlock、Button等。运行点击“Delete Files”按钮后,Flyout 内容将自动显示,如下图:

 Windows运维之新增控件Flyout

对于非Button 控件如何使用Flyout 呢,可以利用FlyoutBase.AttachedFlyout 属性为FrameworkElement 对象添加Flyout 功能,当然需要为该控件增加相应的触发事件来启动Flyout 功能。如下代码:

<TextBox Width="500" HorizontalAlignment="Left" GotFocus="TextBox_GotFocus">

    <FlyoutBase.AttachedFlyout>

        <Flyout>

            <TextBlock Text="You can input 50 words here."/>

        </Flyout>

    </FlyoutBase.AttachedFlyout>

</TextBox>

private void TextBox_GotFocus(object sender, RoutedEventArgs e)

{

    FrameworkElement element = sender as FrameworkElement;

    if (element != null)

    {

        FlyoutBase.ShowAttachedFlyout(element);

    }

}

运行效果如下图:

 Windows运维之新增控件Flyout

除此之外,也可以将Flyout 定义为StaticResource 供多种控件共享使用。

<Page.Resources>

    <Flyout x:Key="FlyoutResources">

        <StackPanel>

            <TextBlock Text="This is a Flyout."/>

        </StackPanel>

    </Flyout>

</Page.Resources>

 

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

    <StackPanel Margin="50" Orientation="Horizontal" VerticalAlignment="Top">

        <Button Content="Click Button" Flyout="{StaticResource FlyoutResources}"/>

        <TextBox FlyoutBase.AttachedFlyout="{StaticResource FlyoutResources}" Margin="50,20"

                 Height="20" Width="150" HorizontalAlignment="Left" GotFocus="TextBox_GotFocus"/>

    </StackPanel>

</Grid>

 Windows运维之新增控件Flyout

Windows运维之新增控件Flyout 

希望这篇文章可以帮助到你。总之,同学们,你想要的职坐标IT频道都能找到!

 


本文由 @诗诗 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved