windows phone (18) Border元素

原文:windows phone (18) Border元素

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

xaml文件:

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

 隐藏文件代码:

View Code

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

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

 效果:

 

 

                                                                                                                                                                            跬步积千里

时间: 2024-10-08 21:12:19

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

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

原文:背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue [源码下载] 背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue 作者:webabcd 介绍背水一战 Windows 10 之 绑定 与 Element 绑定 与 Indexer 绑定 TargetNu

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

原文:与众不同 windows phone (18) - Device(设备)之加速度传感器, 数字罗盘传感器 [索引页][源码下载] 与众不同 windows phone (18) - Device(设备)之加速度传感器, 数字罗盘传感器 作者:webabcd 介绍与众不同 windows phone 7.5 (sdk 7.1) 之设备 加速度传感器(加速度计) 数字罗盘(磁力计) 示例1.演示如何使用加速度传感器AccelerometerDemo.xaml <phone:PhoneAppli

windows phone (20) Image元素

原文:windows phone (20) Image元素 之前有说道wp目前支持的图片格式为png和jpeg ,我们可以通过设置Source属性设置图片源,下面要说的是Iamge元素的部分属性,这就是Stretch,Opacity[作者:神舟龙] Stretch属性 image的拉伸行为有此属性决定,此属性是一个枚举成员,有uniform,fill,uniformtofill,none;从网上找了一张图片进行测试 ,是jpg格式的,看看有什么不同吧: xaml代码:  <!--ContentP

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

原文:windows phone (21) Grid元素的Background和Clip   Grid是唯一可以在内部定制单元格的panel类,我们可以在grid中定制单元格,然后通过grid.row和grid.column定位grid包含的元素在哪个位置,功能比较强大,用到的时候比较多,且看他的属性:[作者:神舟龙]   Background   获取或设置一个用于填充面板的 Brush所以我们可以对其背景进行绘制 ,比如下面的案例:      <!--ContentPanel - 在此处放置

windows phone (24) Canvas元素A

原文:windows phone (24) Canvas元素A   Canvas元素表示定制一个区域,并可以通过相对坐标定义子元素位置,在一下情况下Canvas是不可见的   Height 属性等于 0. Width 属性等于 0. Opacity 属性等于 0. Canvas 的某个上级对象不可见. Background等于null Visiblity属性等于Collapsed  下面是一个的示例是一个绘制奥运五环旗的效果 xaml主要代码:  <!--ContentPanel - 在此处放置

windows phone (22) 隐藏元素

原文:windows phone (22) 隐藏元素 在wp中我们也会用到隐藏某个元素,已达到某种效果,刚刚从文章看到了,分享一下[作者:神舟龙] Visibility 此属性能非常方便的实现隐藏某个元素,但是visibility属性不是boolean类型,他是visibility类型,并包含两个visible和collapsed两个成员的枚举类型: 其中默认状态下是visible即显示,当设置为collapsed时,元素大小就会变成0,并且当设置为collapsed是,该属性所属的元素不参与事

与众不同windows phone (18)

Device(设备)之加速度传感器, 数字罗盘传感器 介绍 与众不同 windows phone 7.5 (sdk 7.1) 之设备 加速度传感器(加速度计) 数字罗盘(磁力计) 示例 1.演示如何使用加速度传感器 AccelerometerDemo.xaml <phone:PhoneApplicationPage x:Class="Demo.Device.AccelerometerDemo" xmlns="http://schemas.microsoft.com/wi

WINDOWS窗口创建及消息处理代码

以前看过很多次,现在默默的一个一个打出来.. 代码: 1 /* header file */ 2 #include <Windows.h> 3 4 /* global var */ 5 HINSTANCE hinst; 6 7 /* function declaire*/ 8 int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int); 9 LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARA

保护内网安全之Windows工作站安全基线开发(一)

本文讲的是保护内网安全之Windows工作站安全基线开发(一),保护Windows工作站免受现代的网络攻击威胁是一件非常具有挑战性的事情. 似乎每个星期攻击者们总有一些新的方法用来入侵系统并获取用户凭据. 创建一个非常安全的Windows工作站的最佳方法是下载Microsoft安全合规管理器(当前版本为4.0),并在要为其创建安全基线GPO的操作系统版本下选择"安全合规"选项. 查看选项,根据需要进行更改,并导出为GPO备份(文件夹). 创建新的并且为空的GPO然后从SCM GPO备份