zoukankan      html  css  js  c++  java
  • 用户控件

      创建用户控件可以在项目里右键添加用户控件,用户控件可以解决系统没有这个控件自己可以特定制作这个控件供自己项目中使用 或者 如果很多地方用到某到模块,就可以把这个模块封装成用户控件供多出调用

      下面创建一个用户控件:

    <UserControl x:Class="用户控件.UserControl1"
                 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
                 xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
                 mc:Ignorable="d" 
                 d:DesignHeight="124" d:DesignWidth="109" >
        <Grid Height="128" Width="113">
            <Border BorderThickness="2" Margin="0,0,1,1">
                <Border.BorderBrush>
                    <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                        <GradientStop Offset="0" Color="#aaa"/>
                        <GradientStop Offset="1" Color="#222"/>
                    </LinearGradientBrush>
                </Border.BorderBrush>
                <Canvas PreviewMouseLeftButtonDown="Canvas_PreviewMouseLeftButtonDown" Height="113" Width="96">
                    <Image x:Name="imageCar" Width="96"  Height="113"/>
                    <Image Height="24" HorizontalAlignment="Left" Margin="91,147,0,0" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="29"  Canvas.Left="-24" Canvas.Top="-59" Visibility="Hidden"  />
                </Canvas>
            </Border>       
        </Grid>
    </UserControl>

    将图片封装到一个带有边框的Border中

    后台代码:

    /// <summary>
        /// UserControl1.xaml 的交互逻辑
        /// </summary>
        public partial class UserControl1 : UserControl
        {
            public UserControl1()
            {
                InitializeComponent();
                this.ImagePath = "/Resources/奔驰.png";
                this.image1.Source = new BitmapImage(new Uri(@"/Resources/打勾.jpg", UriKind.Relative));
            }
            
            private void Canvas_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
            {
                if (image1.Visibility == Visibility.Visible)
                {
                    image1.Visibility = Visibility.Hidden;
                }
                else
                {
                    image1.Visibility = Visibility.Visible;
                }
            }
    
            public string ImagePath { get; set; }
    
            public void setImage()
            {
                //imageCar.Source = ImagePath
                this.imageCar.Source = new BitmapImage(new Uri(@ImagePath,UriKind.Relative)); 
            }
        }

    添加到Window界面上

    Window x:Class="用户控件.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="MainWindow" Height="450" Width="616"
            xmlns:my="clr-namespace:用户控件">
        <Grid>
            <my:UserControl1 HorizontalAlignment="Left" Margin="22,30,0,0" x:Name="userControl11" VerticalAlignment="Top"/>
        </Grid>
    </Window>
    /// <summary>
        /// UserControl1.xaml 的交互逻辑
        /// </summary>
        public partial class UserControl1 : UserControl
        {
            public UserControl1()
            {
                InitializeComponent();
                this.ImagePath = "/Resources/奔驰.png";
            }
            
            private void Canvas_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
            {
                if (image1.Visibility == Visibility.Visible)
                {
                    image1.Visibility = Visibility.Hidden;
                }
                else
                {
                    image1.Visibility = Visibility.Visible;
                }
            }
    
            public string ImagePath { get; set; }
    
            public void setImage()
            {
                //imageCar.Source = ImagePath
                this.imageCar.Source = new BitmapImage(new Uri(@ImagePath,UriKind.Relative)); 
            }
        }
  • 相关阅读:
    Kali视频学习21-25
    20159315《网络攻防实践》第六周学习总结
    Kali视频学习16-20
    20159315《网络攻防实践》第五周学习总结
    一个PE文件的逆向分析
    一个好玩的CTF题
    对于安卓锁屏中知识点小结
    安卓系统安全措施
    安卓防逆向、防动态分析、渗透测试及加固
    安卓组件漏洞防护注意事项
  • 原文地址:https://www.cnblogs.com/hdsong/p/5074332.html
Copyright © 2011-2022 走看看