zoukankan      html  css  js  c++  java
  • Win10 UWP 开发学习代码(不断更新)

    页面之间跳转(传值)


                string txt = "Spring Lee";
                this.Frame.Navigate(typeof(BlankPage1),txt);

    另一个页面接收

    protected override void OnNavigatedTo(NavigationEventArgs e)
            {
                if (e.Parameter!=null)
                {
                    T.Content = e.Parameter.ToString();
                }
            }

    Toast通知 


    private void Button_Click(object sender, RoutedEventArgs e)
            {
                var toast = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01);
    
                var textNodes = toast.GetElementsByTagName("text");
    
                textNodes[0].InnerText = "呵呵呵";
    
                var Message = new ToastNotification(toast);
    
                ToastNotificationManager.CreateToastNotifier().Show(Message);
                
    
            }

    磁贴操作


     添加磁贴 

    private async void Button_Click(object sender, RoutedEventArgs e)
            {
                //磁贴的唯一标识
                string TitleId = "My_Title";
    
                //磁贴展示名称
                string DiaplayName = "我的磁贴";
    
                //点击磁贴传入的参数
                string args = DateTime.Now.ToString();
    
                //磁贴图片URI
                Uri LogoUri = new Uri("ms-appx:///Assets/cc.jpg");
    
                //磁贴尺寸
                var size = TileSize.Square150x150;
    
                var Obj = new SecondaryTile(TitleId,DiaplayName,args,LogoUri,size);
    
                Obj.VisualElements.ShowNameOnSquare150x150Logo = true;
                
    
                if (await Obj.RequestCreateAsync())
                {
                    await new MessageDialog("OK").ShowAsync();
                }
                
            }
      
    
    
    
    

    删除,修改磁贴

     private async void Button_Click_1(object sender, RoutedEventArgs e)
            {
                //磁贴的唯一标识
                string TitleId = "My_Title";
                var Title = new SecondaryTile(TitleId);
    
                Title.VisualElements.ShowNameOnSquare150x150Logo = false;
                await Title.RequestDeleteAsync();
    
            }

     

    磁贴通知


                var toast = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01);
    
                var textNodes = toast.GetElementsByTagName("text");
    
                textNodes[0].InnerText = "呵呵呵";
                textNodes[1].InnerText = "你是猴子请来的救兵吗?";
                textNodes[2].InnerText = "呵呵呵";
    
                var Message = new TileNotification(toast);
                TileUpdateManager.CreateTileUpdaterForSecondaryTile("My_Title").Update(Message);
      

    HttpClient


                string url = "http://www.baidu.com";
                HttpClient client = new HttpClient();
                string responce = await client.GetStringAsync(url);

     Weather天气实战


    利用GPS获取手机坐标(经纬度)

                var geo = new Geolocator();
                var P = await geo.GetGeopositionAsync();
                var Po = P.Coordinate.Point.Position;

    百度地图API获取位置信息

                string AppId = "XTTNdkZYIFCIqKVW1vfYUID3eWOgizwC";
    string Type = "json"; string Url = "http://api.map.baidu.com/geocoder/v2/?ak=" + AppId + "&location=" + Po.Latitude + "," + Po.Longitude + "&output=" + Type + ""; HttpClient client = new HttpClient(); var json = await client.GetStringAsync(Url); JsonObject jsonRes = JsonObject.Parse(json); var City = jsonRes.GetNamedObject("result").GetNamedObject("addressComponent").GetNamedString("city");

    百度天气接口 获取天气信息

                string WeaApi = "http://api.map.baidu.com/telematics/v3/weather?location=" + City + "&output=json&ak=" + AppId;
    
                var WeatherJson = await client.GetStringAsync(WeaApi);
                Info i= JsonConvert.DeserializeObject<Info>(WeatherJson);
                this.DataContext = i;

    天气信息 Info Class

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Weather
    {
      public  class Info
        {
            public int error { get; set; }
            public string status { get; set; }
            public string date { get; set; }
            public List<result> results { get; set; }
    
         
        }
    
        public class result
        {
            public string currentCity { get; set; }
            public string pm25 { get; set; }
    
            public IList<indexitem> index { get; set; }
            public IList<weather_data_item> weather_data { get; set; }
        }
    
        public struct weather_data_item
        {
            public string date { get; set; }
            public string dayPictureUrl { get; set; }
            public string nightPictureUrl { get; set; }
            public string weather { get; set; }
            public string wind { get; set; }
            public string temperature { get; set; }
          
    
    
        }
    
        public struct indexitem
        {
    
            public string title { get; set; }
            public string zs { get; set; }
            public string tipt { get; set; }
            public string des { get; set; }
        }
    }

    前台Xmal代码绑定

    <Page
        x:Class="Weather.MainPage"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="using:Weather"    
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    
        <Grid>
            <Grid.Background>
                <ImageBrush ImageSource="ms-appx:///Assets/zhuo.jpeg"/>
            </Grid.Background>
            <ProgressRing x:Name="gif"></ProgressRing>
            <Hub  Header="Weather">
                <HubSection>
                    <DataTemplate>
                        <StackPanel>
                            <TextBlock Text="{Binding results[0].currentCity}" FontSize="60"></TextBlock>
                            <TextBlock Text="{Binding results[0].pm25}" FontSize="30"></TextBlock>
                        </StackPanel>
                    </DataTemplate>
                </HubSection>
                <HubSection>
                    <DataTemplate>
                        <ListView ItemsSource="{Binding results[0].weather_data}">
                            <ListView.ItemTemplate>
                                <DataTemplate>
    
                                    <Border Width="360" BorderThickness="2" BorderBrush="Green">
                                        <StackPanel>
                                            <TextBlock Text="{Binding date}" FontSize="25"></TextBlock>
                                            <TextBlock Text="{Binding weather}" FontSize="30"></TextBlock>
                                            <StackPanel Orientation="Horizontal">
                                                <Image Source="{Binding dayPictureUrl}" Stretch="Uniform" Width="60" Height="60"></Image>
                                            </StackPanel>
                                            <TextBlock Text="{Binding wind}" FontSize="25"></TextBlock>
                                            <TextBlock Text="{Binding temperature}" FontSize="30"></TextBlock>
    
                                        </StackPanel>
                                    </Border>
    
                                </DataTemplate>
                            </ListView.ItemTemplate>
                        </ListView>
                    </DataTemplate>
                </HubSection>
                <HubSection>
                    <DataTemplate>
                        <ListView ItemsSource="{Binding results[0].index}">
                            <ListView.ItemTemplate>
                                <DataTemplate>
                                    <Border>
                                        <StackPanel>
                                            <TextBlock Text="{Binding tipt}" FontSize="25" Foreground="#FF2996AE"></TextBlock>
                                            <TextBlock Text="{Binding zs}" FontSize="30" Foreground="Green"></TextBlock>
                                            <TextBlock Text="{Binding des}" FontSize="20" TextWrapping="Wrap"></TextBlock>
                                        </StackPanel>
                                    </Border>
                                </DataTemplate>
                            </ListView.ItemTemplate>
                        </ListView>
                    </DataTemplate>
                </HubSection>
            </Hub>
        </Grid>
    </Page>

    天气数据加载时用ProgressRing控制

     <ProgressRing x:Name="Pro"></ProgressRing>
    
    加载前
    
    Pro.IsActive=True;
    
    加载完毕
    
    Pro.IsActive=false;

    数据绑定 


     public  class User
        {
            public string Name { get; set; }
            public string Phone { get; set; }
            public string Address { get; set; }
        }
    
    protected override void OnNavigatedTo(NavigationEventArgs e)
            {
                // TODO: 准备此处显示的页面。
    
                // TODO: 如果您的应用程序包含多个页面,请确保
                // 通过注册以下事件来处理硬件“后退”按钮:
                // Windows.Phone.UI.Input.HardwareButtons.BackPressed 事件。
                // 如果使用由某些模板提供的 NavigationHelper,
                // 则系统会为您处理该事件。
    
                User U = new User();
                U.Name = "张三";
                U.Phone = "1888";
                U.Address = "东北";
                this.DataContext = U;
            }
           <TextBox Text="{Binding }"></TextBox>
            <TextBox Text="{Binding Name}"></TextBox>
            <TextBox Text="{Binding Address}"></TextBox>

    UWP汉堡包菜单 


    Xaml: 
    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <AppBarButton Click="Button_Click" Height="50" Width="50"> <SymbolIcon Symbol="Bold" HorizontalAlignment="Left" VerticalAlignment="Top"/> </AppBarButton> <SplitView x:Name="mySplit" DisplayMode="CompactOverlay" CompactPaneLength="0" OpenPaneLength="200" IsPaneOpen="False" > <SplitView.Pane> <StackPanel Background="Pink"> <AppBarButton Click="Button_Click" Height="50" Width="50"> <SymbolIcon Symbol="Bold" HorizontalAlignment="Left" VerticalAlignment="Top"/> </AppBarButton> <TextBlock FontSize="20">第一项</TextBlock> <TextBlock FontSize="20">第二项</TextBlock> <TextBlock FontSize="20">第一项</TextBlock> <TextBlock FontSize="20">第二项</TextBlock> <TextBlock FontSize="20">第一项</TextBlock> <TextBlock FontSize="20">第二项</TextBlock> </StackPanel> </SplitView.Pane> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="100">Spring</TextBlock> </SplitView> </Grid>



    CS:

    private void Button_Click(object sender, RoutedEventArgs e)
    {
      mySplit.IsPaneOpen = !mySplit.IsPaneOpen;
    }




  • 相关阅读:
    日期操作
    sanchi
    502 Server dropped connection
    把项目挂载到composer上
    从composer上在本地创建一个项目
    初始化后,composer安装
    在项目目录初始化composer
    Linux安装composer
    linux网络编程之TCP/IP基础
    grep的用法
  • 原文地址:https://www.cnblogs.com/myshowtime/p/5497978.html
Copyright © 2011-2022 走看看