自定义Silverlight ChildWindow 弹出窗口样式

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

本来想模拟childwindow的效果,但实在是做不出效果一样的,还是改模板样式吧,下面是万能模板的修改样式

 
<controls:ChildWindow x:Class="FruitWar.Login"
           xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
           xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
           xmlns:controls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls" 
           Title="LoginGame" FontSize="15" BorderThickness="5" HasCloseButton="False" AllowDrop="True" BorderBrush="#63FFFFFF" mc:Ignorable="d" 
                      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
                      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
                      Height="280" Width="400">

    <controls:ChildWindow.Resources>

      <Style TargetType="controls:ChildWindow" x:Name="ChildWindowStyle">
      <Setter Property="IsTabStop" Value="false" />
      <Setter Property="TabNavigation" Value="Cycle" />
      <Setter Property="HorizontalAlignment" Value="Center" />
      <Setter Property="VerticalAlignment" Value="Center" />
      <Setter Property="HorizontalContentAlignment" Value="Stretch" />
      <Setter Property="VerticalContentAlignment" Value="Stretch" />
      <Setter Property="BorderThickness" Value="1" />
      <Setter Property="BorderBrush">
          <Setter.Value>
              <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
                  <GradientStop Color="#FFA3AEB9" Offset="0" />
                  <GradientStop Color="#FF8399A9" Offset="0.375" />
                  <GradientStop Color="#FF718597" Offset="0.375" />
                  <GradientStop Color="#FF617584" Offset="1" />
              </LinearGradientBrush>
          </Setter.Value>
      </Setter>
      <Setter Property="OverlayBrush">
          <Setter.Value>
              <SolidColorBrush Color="#7F000000" />
          </Setter.Value>
      </Setter>
      <Setter Property="OverlayOpacity" Value="1" />
      <Setter Property="Template">
          <Setter.Value>
              <ControlTemplate TargetType="controls:ChildWindow">
                  <Grid x:Name="Root">
                      <Grid.Resources>
                          <Style x:Key="ButtonStyle" TargetType="Button">
                              <Setter Property="Background" Value="#FF1F3B53" />
                              <Setter Property="Foreground" Value="#FF000000" />
                              <Setter Property="Padding" Value="3" />
                              <Setter Property="BorderThickness" Value="1" />
                              <Setter Property="BorderBrush">
                                  <Setter.Value>
                                      <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                          <GradientStop Color="#FFA3AEB9" Offset="0" />
                                          <GradientStop Color="#FF8399A9" Offset="0.375" />
                                          <GradientStop Color="#FF718597" Offset="0.375" />
                                          <GradientStop Color="#FF617584" Offset="1" />
                                      </LinearGradientBrush>
                                  </Setter.Value>
                              </Setter>
                              <Setter Property="Template">
                                  <Setter.Value>
                                      <ControlTemplate TargetType="Button">
                                          <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Width="15" Height="14" Background="#02FFFFFF" x:Name="grid">
                                              <VisualStateManager.VisualStateGroups>
                                                  <VisualStateGroup x:Name="CommonStates">
                                                      <VisualState x:Name="Normal" />
                                                      <VisualState x:Name="MouseOver">
                                                          <Storyboard>
                                                              <ObjectAnimationUsingKeyFrames Storyboard.TargetName="X_Fuzz2" Storyboard.TargetProperty="Visibility">
                                                                  <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
                                                              </ObjectAnimationUsingKeyFrames>
                                                              <ObjectAnimationUsingKeyFrames Storyboard.TargetName="X_Fuzz1" Storyboard.TargetProperty="Visibility">
                                                                  <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
                                                              </ObjectAnimationUsingKeyFrames>
                                                              <ObjectAnimationUsingKeyFrames Storyboard.TargetName="X_Fuzz0" Storyboard.TargetProperty="Visibility">
                                                                  <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
                                                              </ObjectAnimationUsingKeyFrames>
                                                              <DoubleAnimation Duration="0" Storyboard.TargetName="X" Storyboard.TargetProperty="Opacity" To="0.95" />
                                                          </Storyboard>
                                                      </VisualState>
                                                      <VisualState x:Name="Pressed">
                                                          <Storyboard>
                                                              <DoubleAnimation Duration="0" Storyboard.TargetName="X" Storyboard.TargetProperty="Opacity" To="0.85" />
                                                              <ObjectAnimationUsingKeyFrames Storyboard.TargetName="X_Fuzz2" Storyboard.TargetProperty="Visibility">
                                                                  <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
                                                              </ObjectAnimationUsingKeyFrames>
                                                              <ObjectAnimationUsingKeyFrames Storyboard.TargetName="X_Fuzz1" Storyboard.TargetProperty="Visibility">
                                                                  <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
                                                              </ObjectAnimationUsingKeyFrames>
                                                              <ObjectAnimationUsingKeyFrames Storyboard.TargetName="X_Fuzz0" Storyboard.TargetProperty="Visibility">
                                                                  <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
                                                              </ObjectAnimationUsingKeyFrames>
                                                          </Storyboard>
                                                      </VisualState>
                                                      <VisualState x:Name="Disabled">
                                                          <Storyboard>
                                                              <DoubleAnimation Duration="0" Storyboard.TargetName="X" Storyboard.TargetProperty="Opacity" To="0.5" />
                                                          </Storyboard>
                                                      </VisualState>
                                                  </VisualStateGroup>
                                              </VisualStateManager.VisualStateGroups>
                                              <Path HorizontalAlignment="Center" Margin="0,-1,0,0" Width="9" Fill="#14C51900" Stretch="Fill" Data="F1 M 6.742676,3.852539 L 9.110840,1.559570 L 8.910645,0.500000 L 6.838379,0.500000 L 4.902832,2.435547 L 2.967285,0.500000 L 0.895020,0.500000 L 0.694824,1.559570 L 3.062988,3.852539 L 0.527832,6.351563 L 0.689941,7.600586 L 2.967285,7.600586 L 4.897949,5.575195 L 6.854004,7.600586 L 9.115723,7.600586 L 9.277832,6.351563 L 6.742676,3.852539 Z" x:Name="X_Fuzz2" Stroke="#14C51900" Height="8" VerticalAlignment="Center" Opacity="1" RenderTransformOrigin="0.5,0.5" Visibility="Collapsed">
                                                  <Path.RenderTransform>
                                                      <TransformGroup>
                                                          <ScaleTransform ScaleX="1.3" ScaleY="1.3" />
                                                      </TransformGroup>
                                                  </Path.RenderTransform>
                                              </Path>
                                              <Path HorizontalAlignment="Center" Margin="0,-1,0,0" Width="9" Fill="#1EC51900" Stretch="Fill" Data="F1 M 6.742676,3.852539 L 9.110840,1.559570 L 8.910645,0.500000 L 6.838379,0.500000 L 4.902832,2.435547 L 2.967285,0.500000 L 0.895020,0.500000 L 0.694824,1.559570 L 3.062988,3.852539 L 0.527832,6.351563 L 0.689941,7.600586 L 2.967285,7.600586 L 4.897949,5.575195 L 6.854004,7.600586 L 9.115723,7.600586 L 9.277832,6.351563 L 6.742676,3.852539 Z" x:Name="X_Fuzz1" Stroke="#1EC51900" Height="8" VerticalAlignment="Center" Opacity="1" RenderTransformOrigin="0.5,0.5" Visibility="Collapsed">
                                                  <Path.RenderTransform>
                                                      <TransformGroup>
                                                          <ScaleTransform ScaleX="1.1" ScaleY="1.1" />
                                                      </TransformGroup>
                                                  </Path.RenderTransform>
                                              </Path>
                                              <Path HorizontalAlignment="Center" Margin="0,-1,0,0" Width="9" Fill="#FFC51900" Stretch="Fill" Data="F1 M 6.742676,3.852539 L 9.110840,1.559570 L 8.910645,0.500000 L 6.838379,0.500000 L 4.902832,2.435547 L 2.967285,0.500000 L 0.895020,0.500000 L 0.694824,1.559570 L 3.062988,3.852539 L 0.527832,6.351563 L 0.689941,7.600586 L 2.967285,7.600586 L 4.897949,5.575195 L 6.854004,7.600586 L 9.115723,7.600586 L 9.277832,6.351563 L 6.742676,3.852539 Z" x:Name="X_Fuzz0" Stroke="#FFC51900" Height="8" VerticalAlignment="Center" Opacity="1" Visibility="Collapsed" />
                                              <Path HorizontalAlignment="Center" Margin="0,-1,0,0" Width="9" Fill="#FFFFFFFF" Stretch="Fill" Data="F1 M 6.742676,3.852539 L 9.110840,1.559570 L 8.910645,0.500000 L 6.838379,0.500000 L 4.902832,2.435547 L 2.967285,0.500000 L 0.895020,0.500000 L 0.694824,1.559570 L 3.062988,3.852539 L 0.527832,6.351563 L 0.689941,7.600586 L 2.967285,7.600586 L 4.897949,5.575195 L 6.854004,7.600586 L 9.115723,7.600586 L 9.277832,6.351563 L 6.742676,3.852539 Z" x:Name="X" Height="8" VerticalAlignment="Center" Opacity="0.7">
                                                  <Path.Stroke>
                                                      <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                                          <GradientStop Color="#FF313131" Offset="1" />
                                                          <GradientStop Color="#FF8E9092" Offset="0" />
                                                      </LinearGradientBrush>
                                                  </Path.Stroke>
                                              </Path>
                                          </Grid>
                                      </ControlTemplate>
                                  </Setter.Value>
                              </Setter>
                          </Style>
                      </Grid.Resources>
                      <VisualStateManager.VisualStateGroups>
                          <VisualStateGroup x:Name="WindowStates">
                              <VisualState x:Name="Open">
                                  <Storyboard>
                                      <DoubleAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetName="Overlay" Storyboard.TargetProperty="Opacity">
                                          <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                                          <EasingDoubleKeyFrame KeyTime="00:00:00.3" Value="1" />
                                      </DoubleAnimationUsingKeyFrames>
                                      <DoubleAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetName="ContentRoot" Storyboard.TargetProperty="(RenderTransform).(Children)[0].ScaleX">
                                          <SplineDoubleKeyFrame KeyTime="0" Value="0" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.25" Value="0" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.4" Value="1" />
                                          <SplineDoubleKeyFrame KeySpline="0,0,0.5,1" KeyTime="00:00:00.45" Value="1.05" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.55" Value="1" />
                                      </DoubleAnimationUsingKeyFrames>
                                      <DoubleAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetName="ContentRoot" Storyboard.TargetProperty="(RenderTransform).(Children)[0].ScaleY">
                                          <SplineDoubleKeyFrame KeyTime="0" Value="0" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.25" Value="0" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.4" Value="1" />
                                          <SplineDoubleKeyFrame KeySpline="0,0,0.5,1" KeyTime="00:00:00.45" Value="1.05" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.55" Value="1" />
                                      </DoubleAnimationUsingKeyFrames>
                                  </Storyboard>
                              </VisualState>
                              <VisualState x:Name="Closed">
                                  <Storyboard>
                                      <DoubleAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetName="Overlay" Storyboard.TargetProperty="Opacity">
                                          <EasingDoubleKeyFrame KeyTime="0" Value="1" />
                                          <EasingDoubleKeyFrame KeyTime="00:00:00.3" Value="0" />
                                      </DoubleAnimationUsingKeyFrames>
                                      <DoubleAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetName="ContentRoot" Storyboard.TargetProperty="(RenderTransform).(Children)[0].ScaleX">
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.25" Value="1.05" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.45" Value="0" />
                                      </DoubleAnimationUsingKeyFrames>
                                      <DoubleAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetName="ContentRoot" Storyboard.TargetProperty="(RenderTransform).(Children)[0].ScaleY">
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.25" Value="1.05" />
                                          <SplineDoubleKeyFrame KeyTime="00:00:00.45" Value="0" />
                                      </DoubleAnimationUsingKeyFrames>
                                  </Storyboard>
                              </VisualState>
                          </VisualStateGroup>
                      </VisualStateManager.VisualStateGroups> <!-- 打开动画  可设置禁用-->
                      <Grid x:Name="Overlay" HorizontalAlignment="Stretch" VerticalAlignment="Top" Margin="0" Background="{TemplateBinding OverlayBrush}" Opacity="{TemplateBinding OverlayOpacity}" />
                      <!-- 内容区域 包括标题 -->
                      <Grid x:Name="ContentRoot" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}" RenderTransformOrigin="0.5,0.5" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}">
                          <Grid.RenderTransform>
                              <TransformGroup>
                                  <ScaleTransform />
                                  <SkewTransform />
                                  <RotateTransform />
                                  <TranslateTransform />
                              </TransformGroup>
                          </Grid.RenderTransform>
                          <!-- 最外框边样式 -->
                          <!--<Border BorderThickness="1" CornerRadius="2" BorderBrush="#14000000" Background="#14000000" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="-1" />
                          <Border BorderThickness="1" CornerRadius="2.25" BorderBrush="#0F000000" Background="#0F000000" HorizontalAlignment="Stretch" Margin="-2" VerticalAlignment="Stretch" />
                          <Border BorderThickness="1" CornerRadius="2.5" BorderBrush="#0C000000" Background="#0C000000" HorizontalAlignment="Stretch" Margin="-3" VerticalAlignment="Stretch" />
                          <Border BorderThickness="1" CornerRadius="2.75" BorderBrush="#0A000000" Background="#0A000000" HorizontalAlignment="Stretch" Margin="-4" VerticalAlignment="Stretch" />--> 
                          
                          <!--<Border Background="#FFFFFFFF" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" CornerRadius="2">-->
                              <Border CornerRadius="1.5" Margin="1">
                                    <!-- 底层背景色 -->
                                    <!--<Border.Background> 
                                      <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                          <GradientStop Color="#FFE5E8EB" Offset="1" />
                                          <GradientStop Color="#FFF6F8F9" Offset="0" />
                                      </LinearGradientBrush>
                                  </Border.Background>-->
                                  
                                  <Grid>
                                      <Grid.RowDefinitions>
                                          <RowDefinition Height="Auto" />
                                          <RowDefinition />
                                      </Grid.RowDefinitions>
                                      <Border x:Name="Chrome" Visibility="Collapsed" Width="Auto" BorderBrush="#FFFFFFFF" BorderThickness="0,0,0,1"> <!-- 标题区 设置是否显示标题 -->
                                          <Border.Background>
                                              <LinearGradientBrush EndPoint="0.5,0.528" StartPoint="0.5,0">
                                                  <GradientStop Color="#FFE5E8EB" Offset="1" />
                                                  <GradientStop Color="#FFFEFEFE" Offset="0" />
                                              </LinearGradientBrush>
                                          </Border.Background> <!-- 标题区域背景颜色 -->
                                          <Grid Height="Auto" Width="Auto">
                                              <Grid.ColumnDefinitions>
                                                  <ColumnDefinition />
                                                  <ColumnDefinition Width="30" />
                                              </Grid.ColumnDefinitions>
                                              <ContentControl Content="{TemplateBinding Title}" IsTabStop="False" FontWeight="Bold" HorizontalAlignment="Stretch" VerticalAlignment="Center" Margin="6,0,6,0" />
                                              <Button x:Name="CloseButton" Grid.Column="1" IsTabStop="False" HorizontalAlignment="Center" VerticalAlignment="Center" Width="15" Height="14" Style="{StaticResource ButtonStyle}" />
                                          </Grid>
                                      </Border>
                                      <Border Background="{TemplateBinding Background}" Grid.Row="1"> <!-- 内容区域 不包括标题 -->
                                          <ContentPresenter x:Name="ContentPresenter" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" />
                                      </Border>
                                  </Grid>
                              </Border>
                          <!--</Border>-->
                      </Grid>
                  </Grid>
              </ControlTemplate>
          </Setter.Value>
      </Setter>
  </Style>

    </controls:ChildWindow.Resources>

    <controls:ChildWindow.Style>
        <StaticResource ResourceKey="ChildWindowStyle" />
    </controls:ChildWindow.Style>


    <Canvas  x:Name="LayoutRoot" Width="400" Height="280">
        <Border BorderBrush="#FF767676" BorderThickness="0,1,0,0" Name="border1" Background="#FFE0C0A7" HorizontalAlignment="Left" Width="400" Margin="0,0,0,17" Canvas.Left="-1" Canvas.Top="213" Height="1" />
        <Button x:Name="RegButton" Content="注册" Width="80" Height="30" HorizontalAlignment="Left" Margin="108,17,0,22"  FontSize="13" Canvas.Top="210" Canvas.Left="109" />
        <Button x:Name="LoginButton" Content="登陆" Width="80" Height="30" HorizontalAlignment="Right"  Margin="0,17,100,22" FontSize="13" Canvas.Top="210" Canvas.Left="109" />
        <TextBlock Height="23" HorizontalAlignment="Left"  Name="TextBlock1" Text="用户名:" VerticalAlignment="Top" Canvas.Left="80" Canvas.Top="112" />
        <TextBox Height="23" HorizontalAlignment="Left" Name="TextBox1" VerticalAlignment="Top" Width="167" FontSize="12" Padding="5,1,0,0" Grid.Row="1" Canvas.Top="112" Canvas.Left="148" />
        <TextBlock Height="23" HorizontalAlignment="Left"  Name="TextBlock2" Text="密    码:" VerticalAlignment="Top" Canvas.Left="80" Canvas.Top="146" />
        <PasswordBox Height="23" HorizontalAlignment="Left"  Name="PasswordBox1" VerticalAlignment="Top" Width="167" Padding="5,1,0,0" FontSize="12" Canvas.Top="145" Canvas.Left="148" />
        <TextBlock Height="23" HorizontalAlignment="Left"  Name="TextBlock3" Text=" " VerticalAlignment="Top" Foreground="Red" Canvas.Left="83" Canvas.Top="178" />
        <Image Margin="0,0,0,0" Name="image1" Stretch="Fill" Source="/FruitWar;component/Images/LoginHead.jpg" Height="91" Width="399" Canvas.Left="-1" Canvas.Top="-1" />
        <Canvas.Background>
            <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                <GradientStop Color="White" Offset="0" />
                <GradientStop Color="#FFF8A76C" Offset="1" />
            </LinearGradientBrush>
    </Canvas.Background>
    </Canvas>
</controls:ChildWindow>

从零到一:ArduPilot无人船PID调参实战指南 本文详细介绍了ArduPilot无人船PID调参的实战指南,从基础参数设定到高级调参技术,帮助用户掌握水面环境下的PID控制逻辑。通过案例分析和参数示例,解决无人船在空载、负载变化及不同水域环境中的航行问题,提升无人船的稳定性和精确度。 阅读详情

相关推荐

中兴通讯招聘测评答题技巧,真题解析(附真题)

中兴招聘测评、中兴入职测评、中兴线上考试

guang221315221的博客 5754

Silverlight自定义ChildWindow样式

Silverlight默认提供的弹出框窗体

JZY的专栏 1119

手把手教你用YOLOv5和OpenCV实现DNF全自动刷图(含自动拾取与Boss战逻辑)

本文详细介绍了如何使用YOLOv5和OpenCV构建DNF全自动刷图系统,包括环境配置、游戏画面采集、目标检测、场景导航及操作控制等核心模块。通过实战案例,帮助开发者掌握游戏自动化技术,实现自动拾取与Boss战逻辑,提升游戏效率。

weixin_42628941的博客 381

使用Silverlight Toolkit实现弹窗---ChildWindow

        在Silverlight中写一个弹窗功能并不难,但必定也要自己写代码,定义模式去实现,而 在SilverlightToolKit3中,提供了一个叫“ChildWindow”的类,位于:          System.Windows.Controls                 使用它,我们可以很容易的将任何想放在新窗口中显示的内容,以弹窗的形式显示显示。

daizhj的专栏 2129

wp7 中的弹出窗口类似childwindow

由于目前的Silverlight for Windows Phone 中不支持ChildWindow,所以当我们想要弹出一些窗口时,只能自己想办法了。 第一种方法是MessageBox,相当的简单,当然你也可以给它加上一些样式。 第二种方法是 查看SilverlightChildWindow定义方式(推荐使用ILSpy或者Reflector反编译) 第三种方法是使用Popu

jazywoo_在路上 908

silverlight自定义控件之消息提示框

silverlight已经自带messageBox控件,并且非常方便地使用,其特性是模态提示窗,需要确定关闭后才能继续其他操作,不然当前ui线程就一直处于等待状态。但是为什么还要开发一个自定义的messageBox呢?当我们发现silverlight自带的弹出确认框与整个系统的风格非常格格不入的时候,华丽的界面弹出一个灰色的提示框,整体感觉就不言而喻了。 想去尝试修改它的样式,可悲的是它是跟...

weixin_30502157的博客 185

ChildWindow

Silverlight 3 Beta发布了!其中,ChildWindow是一个令人激动的控件。使用ChildWindow,终于在应用程序里轻松地弹出对话框,而不用Popup。接下来我就在项目里添加一个登录的对话框: 在解决方案中添加一个ChildWindow:   在Experssion Blend 3里打开LoginWindow,可以看到Silverlight已经为我们添加了一些项目:...

weixin_34315665的博客 232

完美自定义ChildWindow

文档下载:http://www.ctdisk.com/file/1758325 ChildWindow在所有应用领域中都是必不可缺的好工具,小到一个弹出的确认对话框;大到包含众多复杂参数、选项及数据列表的资源窗口,都可以通过它来分类实现。ChildWindow的好处是可以实现拖动及伸缩达到随意布局,更高级的同样可以实现类似最大化、最小化等高级布局功能。 目前Silverlight3.0中自...

jandroid 110

Windows Phone 中的弹出窗口

由于目前的Silverlight for Windows Phone 中不支持ChildWindow,所以当我们想要弹出一些窗口时,只能自己想办法了。 第一种方法是MessageBox,相当的简单,当然你也可以给它加上一些样式。 第二种方法是 查看SilverlightChildWindow定义方式(推荐使用ILSpy或者Reflector反编译) 第三种方...

weixin_34080903的博客 78

ESP32-S3 N16R8工程化开发指南:PSRAM启用与CMake项目实战

ESP32-S3 是一款集成 Wi-Fi 与 BLE 的双模 MCU,广泛应用于物联网终端与边缘节点开发。其核心能力依赖于外置 PSRAM 的高效利用与 ESP-IDF 构建系统的精准控制。理解 PSRAM 初始化原理、内存分区机制及 CMake 工程组织逻辑,是实现稳定量产的关键技术基础。本文围绕 ESP32-S3 N16R8 型号(16MB Flash + 8MB PSRAM),深入解析 PSRAM 启用条件、sdkconfig 配置要点、CMakeLists.txt 编译控制逻辑,以及可追溯固件版本管

weixin_33922670的博客 281

Windows Phone 7中的弹出窗口

  由于目前的Silverlight for Windows Phone 中不支持ChildWindow,所以当我们想要弹出一些窗口时,只能自己想办法了。   第一种方法是MessageBox,相当的简单,当然你也可以给它加上一些样式。   第二种方法是 查看SilverlightChildWindow定义方式(推荐使用ILSpy或者Reflector反编译)   第三种方法是使用Po...

love19820823 71

Silverlight 3 Beta 新特性解析(7)- Child Window和Shader Effect篇

前提条件: 阅读本文之前请确认你已经安装了如下软件 Visual Studio 2008 (Express) SP1 Silverlight 3 Tools For Visual Studio Microsoft Expression Blend 3 MIX 09 Preview .Net RIA Serv...

weixin_34345560的博客 206

VisualTreeHelper不仅仅只是用来查看可视化树结构的

关于VisualTreeHelper这个类,大家应该都应该看到过,它是silverlight提供的一个帮助器类,通过它,以便您可以检查可视化树结构。今天,我们来通过对VisualTreeHelper的使用,来做一些比较有意思的事情,当然不止是查看可视化树的结构,是不是有点迫不及待了呢?其实,也没什么特别离谱,当然还是和可视化树有关啦。其实呢,今天,我们要使用VisualTreeHelper...

weixin_30715523的博客 290

[置顶] Silverlight之控件应用总结(一)(3)

[置顶]Silverlight之控件应用总结(一)(3) 分类:技术2012-04-02 20:352442人阅读评论(1)收藏举报 silverlightradiobuttondatatemplatebindingcalendarsetter Silverlight之控件应用总结(一) 代码都是测试通过的,环境Silverlight4+VS2010企...

weixin_30882895的博客 130

CMSIS-FreeRTOS深度审计:产线级RTOS工程避坑指南

CMSIS-FreeRTOS并非简单的FreeRTOS封装,而是基于CMSIS-RTOS v2规范构建的运行时抽象层,其本质是一套强制行为契约。它通过osThreadNew、osMutexAcquire等标准化API屏蔽底层细节,但引入了宏展开歧义、三重间接调用链、静默截断与句柄不兼容等深层原理问题。技术价值在于统一ARM生态接口,代价是实时性下降、RAM/Flash开销增加及调试信息失真。典型应用场景包括车规级控制器、工业PLC和医疗设备等安全关键嵌入式系统,尤其在需满足IEC 61508或ISO 262

weixin_34417200的博客 552

与ComboBox有相似行为的下拉控件的实现

ComboBox是一个很有用的控件,该控件基本在任何一套UI控件包中都属于必须提供的必备基础控件,同时它的实现也很值得学习. 所谓的“与ComboBox有相似行为”,我主要是指以下几点,为了描述方便,我把此类控件分为两部分,没有下拉时,显示的区域称为主控件,下拉时,下拉区域称为弹出控件. 1、弹出控件可以紧跟主控件的周围. 2、弹出控件必须在最大范围内不被父容器裁剪.比如,如果是Win32或...

weixin_30338461的博客 151
上一篇: Silvelright游戏对象重叠筛选
下一篇: Silverlight 游戏计时器
senwzz
博客等级 码龄18年 6粉丝 25原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值