先看一下windows自带计算机的布局:

大概布局能看出,有菜单栏(menu),有显示框(textbox),然后剩下的6行5列的布局

先看下代码:

            <StackPanel>
<Grid>
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<TextBox Name="xianshi" Text="显示框" Height="50" Margin="5,5,5,5"></TextBox>
</Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<Button Grid.Row="0" Grid.Column="0" Content="MC" Margin="5"></Button>
<Button Grid.Row="0" Grid.Column="1" Content="MR" Margin="5"></Button>
<Button Grid.Row="0" Grid.Column="2" Content="MS" Margin="5"></Button>
<Button Grid.Row="0" Grid.Column="3" Content="M+" Margin="5"></Button>
<Button Grid.Row="0" Grid.Column="4" Content="M-" Margin="5"></Button> <Button Grid.Row="1" Grid.Column="0" Content="←" Margin="5"></Button>
<Button Grid.Row="1" Grid.Column="1" Content="CE" Margin="5"></Button>
<Button Grid.Row="1" Grid.Column="2" Content="C" Margin="5"></Button>
<Button Grid.Row="1" Grid.Column="3" Content="±" Margin="5"></Button>
<Button Grid.Row="1" Grid.Column="4" Content="√" Margin="5"></Button> <Button Grid.Row="2" Grid.Column="0" Content="7" Margin="5"></Button>
<Button Grid.Row="2" Grid.Column="1" Content="8" Margin="5"></Button>
<Button Grid.Row="2" Grid.Column="2" Content="9" Margin="5"></Button>
<Button Grid.Row="2" Grid.Column="3" Content="/" Margin="5"></Button>
<Button Grid.Row="2" Grid.Column="4" Content="%" Margin="5"></Button> <Button Grid.Row="3" Grid.Column="0" Content="4" Margin="5"></Button>
<Button Grid.Row="3" Grid.Column="1" Content="5" Margin="5"></Button>
<Button Grid.Row="3" Grid.Column="2" Content="6" Margin="5"></Button>
<Button Grid.Row="3" Grid.Column="3" Content="*" Margin="5"></Button>
<Button Grid.Row="3" Grid.Column="4" Content="1/x" Margin="5"></Button> <Button Grid.Row="4" Grid.Column="0" Content="1" Margin="5"></Button>
<Button Grid.Row="4" Grid.Column="1" Content="2" Margin="5"></Button>
<Button Grid.Row="4" Grid.Column="2" Content="3" Margin="5"></Button>
<Button Grid.Row="4" Grid.Column="3" Content="-" Margin="5"></Button>
<Button Grid.Row="4" Grid.Column="4" Content="=" Grid.RowSpan="2" Margin="5"></Button> <Button Grid.Row="5" Grid.Column="0" Content="0" Grid.ColumnSpan="2" Margin="5"></Button> <Button Grid.Row="5" Grid.Column="2" Content="." Margin="5"></Button>
<Button Grid.Row="5" Grid.Column="3" Content="+" Margin="5"></Button> </Grid>
</StackPanel>
</DockPanel>

看下生成的结果:

虽然还差了点,但是继续努力吧。。。继续学习。。

wpf 计算器布局练习的更多相关文章

  1. C# WPF计算器界面(Calculator Design With Animations)

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  2. WPF 之 布局(一)

    WPF的布局控件都在 System.Windows.Controls.Panel 这个基类下面,使用 WPF提供的各种控件在WPF应用程序中界面进行布局,同时对各种子控件(如按钮.文本框,下拉框等)进 ...

  3. WPF简单布局 浅尝辄止

            WPF的窗口只能包含一个元素,为了在WPF窗口中放置多个元素并创建更实用的用户界面,需要在窗口上放置一个容器,然后在容器中放置其它元素. 注意:造成这一限制的原因是window类继承自 ...

  4. WPF UI布局之概述

    在线演示:http://v.youku.com/v_show/id_XNzA5NDk2Mjcy.html 清晰版视频+代码下载:http://115.com/lb/5lbeer0m9lad 一.简单介 ...

  5. WPF(布局)

      WPF编程学习——布局   本文目录 1.布局简介 2.面板(Panel) 3.视图框(Viewbox) 4.滚动视图控件(ScrollViewer) 5.公共布局属性 1.布局简介 应用程序界面 ...

  6. Wpf之布局

    Wpf之布局 上一章大家有了自己的一个Hello World的wpf程序,今天咱们就一起走进WPF,一起来看看wpF的前台xaml这门语言的魅力. 写过web 的人都知道布局这个概念,在web中布局和 ...

  7. WPF常用布局介绍

    概述:本文简要介绍了WPF中布局常用控件及布局相关的属性 1 Canvas Canvas是一个类似于坐标系的面板,所有的元素通过设置坐标来决定其在坐标系中的位置..具体表现为使用Left.Top.Ri ...

  8. wpf(布局与Canvas )

    WPF的布局有控件都在System.Windows.Controls.Panel这个基类下面,常见的布局控件: . canvas: Canvas是最基本的面板,它不会自动调整内部元素的排列及大小,它仅 ...

  9. 【WPF】 布局篇

    [WPF] 布局篇 一. 几个常用且至关重要的属性 1. Width,Height : 设置窗体,控件宽高. 这里注意,WPF是自适应的, 所以把这2个属性设置 Auto, 则控件宽高会自动改变. 2 ...

随机推荐

  1. Android进阶篇-线程分析(一)

    转载自:http://www.trinea.cn/android/java-android%E7%BA%BF%E7%A8%8B%E6%B1%A0/ 介绍new Thread的弊端及Java四种线程池的 ...

  2. vijosP1437简单的口令

    描述暑假,简单闲着无聊,边想出了一个很奇怪的东西.......简单有很奇怪的方法来隐藏他的口令.他会选择一个字符串S(由L个小写字母组成,5<=L<=100,000),然后他把S顺时针绕成 ...

  3. dtree的使用

      第一步:到官网下载下载dtree的相关包. 第二步:导入相关包 <link rel="StyleSheet" href="${ctx}/dtree/dtree. ...

  4. Android获取IMSI和IMEI

    IMSI是一个 唯一的数字, 标识了GSM和UMTS 网络里的唯一一个用户. 它 存储 在手机的SIM卡里,它会通过手机发送到网络上. IMEI也是一串唯一的数字, 标识了 GSM 和 UMTS网络里 ...

  5. Java开发心得

    1. Spring概述 Spring 是一个开源框架,是为了解决企业应用程序开发复杂性由Rod Johnson创建的.框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J ...

  6. 大数加法,A+B

    A + B Problem II Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  7. PHP 201307 月最新手册chm 免费下载

    本次更新两个版本  php_manual_zh_notreview.chm (15MB 不带评论)     php_manual_zh_review.chm    (32MB 带评论)     制作方 ...

  8. oracle 中的truncate 和delete

    一.查询表大小,块多少语句 Select SEGMENT_Name,BYTES,BLOCKS,Extents From dba_segments Where segment_name In('BAI_ ...

  9. centos 中查找依赖及库

    yum search ** yum whatprovides libQtGui.so.4

  10. MySQL 数据库中用户表中口令登陆设置

    工具:MyEclipse8.5.apache-tomcat-6.0.43.MySQL5.6 问题:项目是同事发给我,正常运行之后,使用MySQL表里的管理员数据登陆时,提示“仅限于非总部工号登录!” ...