原文:windows phone (18) Border元素

Border类是对某一个对象的周围边框,背景,或者同时绘制两者,首先看一个简单的例子进行分析【作者:神舟龍

xaml文件:

<!--ContentPanel - 在此处放置其他内容-->        <Grid x:Name="ContentPanel" Grid.Row="" Margin="12,0,12,0">            <Border Background="DarkCyan" BorderBrush="Coral"  BorderThickness=""  CornerRadius="">                <TextBlock x:Name="tbShow" Text="边框元素示例" VerticalAlignment="Center" HorizontalAlignment="Center">                    <TextBlock.RenderTransform>                        <CompositeTransform Rotation=""></CompositeTransform>                    </TextBlock.RenderTransform>                </TextBlock>            </Border>        </Grid>

上面代码中BorderBrush表示边框颜色,它是Brush类型的,所以可以设置渐变画刷;BorderThickness表示边框的粗细,它是Thickness类型的,Thickness是用于Margin和Padding的结构体,所以可以分别为上下左右设置不同个宽度;CornerRadius表示设置边框角的半径,它是CornerRadius结构体,所以运行为四个角设置不同的圆角半径值;可以看到TextBlock直接镶嵌在Border中,这是因为Border有个属性是Child,因为Child属性是Border的ContentProperty属性,所以Border.Child标记不是必须的,实现的效果:

需要注意的是Child属性只能设置一个UIElement类型的元素,所以我们可以在里面放些textblock,image等,如果要在border里进行元素扩展,可以使用面板stackpanel,canvas,grid,里面嵌套其他元素;从上图可以看出,我们定义的border是整个填充grid的,这是因为border元素的水平位置HorizontalAlignment和垂直位置VerticalAlignment默认值为Stretch,所以会拉伸填充整个父元素,所以一般会设置border的宽和高;


下面的示例在隐藏文件cs实现的四个角的圆角半径不同,边框的每个边的粗细不同,并绘制边框颜色

xaml文件代码:

 <!--ContentPanel - 在此处放置其他内容-->        <Grid x:Name="ContentPanel" Grid.Row="" Margin="12,0,12,0">            <Border x:Name="bd" Background="DarkCyan" ManipulationDelta="bd_ManipulationDelta">                <TextBlock x:Name="tbShow" Text="边框元素示例" VerticalAlignment="Center" HorizontalAlignment="Center">                    <TextBlock.RenderTransform>                        <CompositeTransform Rotation=""></CompositeTransform>                    </TextBlock.RenderTransform>                </TextBlock>            </Border>        </Grid>

隐藏文件代码:

/// <summary>
        /// 触摸移动实现
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void bd_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
        {
            //左上右下
            Thickness thickNess = new Thickness(, , , );
            //设置不同的粗细
            bd.BorderThickness = thickNess;
            //设置左上,右上,左下,右下的圆角半径值
            CornerRadius cornerRadius = new CornerRadius(, , , );
            bd.CornerRadius = cornerRadius;

            LinearGradientBrush lgb = new LinearGradientBrush();
            GradientStopCollection gsc = new GradientStopCollection();
            GradientStop gs1 = new GradientStop();
            gs1.Color = Color.FromArgb(, , , );
            gs1.Offset = 0.2;
            gsc.Add(gs1);
            GradientStop gs2 = new GradientStop();
            gs2.Color = Color.FromArgb(, , , );
            gs2.Offset = 0.7;
            gsc.Add(gs2);
            lgb.GradientStops = gsc;
            //实现边框颜色
            bd.BorderBrush = lgb;
        }

效果:

跬步积千里

windows phone (18) Border元素的更多相关文章

  1. 背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue

    [源码下载] 背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue 作者:weba ...

  2. html5--1.18 div元素与布局

    1.18 div元素与布局 1.元素的分类2.div元素与布局 1.元素的分类 块元素:主要特征是会产生换行效果,自动与其他元素分离成两行:通常可以作为容器在内部添加其他元素. 已经学过的块元素有: ...

  3. 不可或缺 Windows Native (18) - C++: this 指针, 对象数组, 对象和指针, const 对象, const 指针和指向 const 对象的指针, const 对象的引用

    [源码下载] 不可或缺 Windows Native (18) - C++: this 指针, 对象数组, 对象和指针, const 对象,  const 指针和指向 const 对象的指针, con ...

  4. 与众不同 windows phone (18) - Device(设备)之加速度传感器, 数字罗盘传感器

    原文:与众不同 windows phone (18) - Device(设备)之加速度传感器, 数字罗盘传感器 [索引页][源码下载] 与众不同 windows phone (18) - Device ...

  5. windows phone (25) Canvas元素B

    原文:windows phone (25) Canvas元素B  ZIndex 这也是一个附加属性,表示canvas的children集合内的子元素的显示顺序,在canvas中的元素默认情况下是后面的 ...

  6. windows phone (23) ScrollViewer元素

    原文:windows phone (23) ScrollViewer元素 ScrollViewer类表示可包含其他可见元素的可滚动区域,一般会用在屏幕的宽度和高度不够用时,作为一种延伸使用,参考书上称 ...

  7. windows phone (20) Image元素

    原文:windows phone (20) Image元素 之前有说道wp目前支持的图片格式为png和jpeg ,我们可以通过设置Source属性设置图片源,下面要说的是Iamge元素的部分属性,这就 ...

  8. windows phone (21) Grid元素的Background和Clip

    原文:windows phone (21) Grid元素的Background和Clip Grid是唯一可以在内部定制单元格的panel类,我们可以在grid中定制单元格,然后通过grid.row和g ...

  9. windows phone (22) 隐藏元素

    原文:windows phone (22) 隐藏元素 在wp中我们也会用到隐藏某个元素,已达到某种效果,刚刚从文章看到了,分享一下[作者:神舟龙] Visibility 此属性能非常方便的实现隐藏某个 ...

随机推荐

  1. Windows环境下访问NFS(33篇Storage的文章)

    Windows环境下访问NFS 使用Solaris时,如果想在两台Solaris之间共享数据,那么你想到的最省事.最方便的方法肯定是nfs.但是现在的学生们的桌面,估计99%以上都是Windows,W ...

  2. vc 在edit控件中动态插入数据滚动显示

    内存从网上论坛摘抄整理 思路:给控件设置多行属性,设置垂直滚动条,Auto Vscroll设置为true,放入文本后把插入点设置到末尾 pEdit->LineScroll(pEdit->G ...

  3. 学习笔记之TCP/IP协议分层与OSI參考模型

    1.协议的分层      ISO在制定标准化OSI之前,对网络体系结构相关的问题进行了充分的讨论, 终于提出了作为通信协议设计指标的OSI參考模型.这一模型将通信协议中必要 的功能分成了7层.通过这些 ...

  4. Swift - 区间运算符(... 和 ..<)

    区间运算符可以用来表示两个操作数之间的范围集合. 1,闭区间运算符:a...b 1 2 3 for iCount in 512...1024{      //从512遍历到1024(包括1024) } ...

  5. 怎样将baidu地图中的baidu logo 去掉

    今天我的老大问我是不是能够将baidumap 的js版中baidu logo 去掉. 我上网查询一下,有各种方法.比方将相应的logo div remove hide 等等,这些都是须要JS 函数触发 ...

  6. 实现 select中指定option选中触发事件

    我们在用到下拉列表框select时,需要对选中的<option>选项触发事件,其实<option>本身没有触发事件方法,我们只有在select里的onchange方法里触发. ...

  7. 引用类中的enum

    引用类中的enum 引用类中的enum,需要加类的域class_name::value_in_enum_name 点击(此处)折叠或打开 #include <stdio.h> #inclu ...

  8. UVA 10313(完全背包变形)

    Problem B Pay the Price Input: standard input Output: standard output Time Limit: 2 seconds Memory L ...

  9. objective-c 中数据类型之六 数值类(NSValue)

    // NSValue能够将c类型转换为Objective-C对象,如NSRange,CGPoint.CGSize,CGRect,CGVector,UIEdgeInsets,UIOffset NSRan ...

  10. UVa 10616 - Divisible Group Sums

    称号:给你n数字.免去m一个,这使得他们可分割d.问:有多少种借贷. 分析:dp,D01背包. 背包整数分区. 首先.整点d.则全部数字均在整数区间[0,d)上: 然后,确定背包容量,最大为20*10 ...