動作環境
Windows 8.1 Pro (64bit)
Microsoft Visual Studio 2017 Community
Sublime Text 2
デザイン時
実行時
サイズの違い
- デザイン時: 525 x 350
- XAMLで指定した数値
- 実行時: 510 x 340
XAMLファイル
MainWindow.xaml
<Window x:Class="WPF_TCPClient_171205.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WPF_TCPClient_171205"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="525">
<Grid Background="LightGray">
<Button Name="B_send" Content="Send" HorizontalAlignment="Left" Margin="432,67,0,0"
VerticalAlignment="Top" Width="75" Click="B_send_Click"/>
<Label Content="Text" HorizontalAlignment="Left" Margin="10,64,0,0" VerticalAlignment="Top"/>
<TextBox Name="T_sendText" HorizontalAlignment="Left" Height="23" Margin="58,65,0,0"
TextWrapping="Wrap" Text="Hello" VerticalAlignment="Top" Width="357"/>
<TextBox Name="T_log" HorizontalAlignment="Left" Height="215" Margin="10,94,0,0"
TextWrapping="Wrap" VerticalAlignment="Top" Width="497"
VerticalScrollBarVisibility="Visible"
Text="{Binding LogText}"/>
<Label Content="SendTo" HorizontalAlignment="Left" Margin="10,9,0,0" VerticalAlignment="Top"/>
<TextBox Name="T_sendTo" HorizontalAlignment="Left" Height="23" Margin="68,10,0,0"
TextWrapping="Wrap" Text="192.168.0.79" VerticalAlignment="Top" Width="120"/>
<Label Content="port" HorizontalAlignment="Left" Margin="229,9,0,0" VerticalAlignment="Top"/>
<TextBox Name="T_port" HorizontalAlignment="Left" Height="23" Margin="268,10,0,0"
TextWrapping="Wrap" Text="7000" VerticalAlignment="Top" Width="120"/>
</Grid>
</Window>
調整のコード > お薦めではない
code behindにて、初期化処理の後でWidthとHeightを10程度加えると、デザイン時のサイズに近づくが、実行環境により異なるかもしれないため、この方法はお薦めではない。
public MainWindow()
{
InitializeComponent();
this.Height = 350 + 10;
this.Width = 525 + 10;
他のバージョンのIDEでは問題があるのか不明。
関連1
Different size form WPF - Design mode vs Runtime mode
リンク先の回答にあるように、Width="525*"のような記載にしたら下記のエラーとなった。
FormatException: '525*' 文字列は、Length に変換できません。
"525*"などの書き方は「比率指定」だった。
https://qiita.com/7of9/items/eec0e8ce50149d087706
ColumnDefinitionなどでWidth="525*"というのは指定できるが、結果が自分の欲しいものにはならない。