2009-08-04 17 views
2

初心者ご質問、お許しください...デザインタイムusercontrols - 私は何も見ることができません!

最終的にビジネスオブジェクトにバインドされるWpf UserControlを開発しています。ユーザコントロールは、一連のレイアウトされたTextBlocksに過ぎず、おそらく(後で)イメージまたは2つになります。

:私は、ユーザーコントロールをレイアウトだとして、私は、ユーザーコントロールがどのように見えるか見ることができますが、できるだけ早く私は、テキストプロパティを変更するとバインディング情報を含むよう

は、私はすべてのテキストブロックにダミーテキストを置くことができます

<TextBlock Margin="0,12.8,42,0" Name="lblLastName" 
     FontSize="8" Height="19" 
     VerticalAlignment="Top" 
     Text="{Binding Mode=OneWay, Path=LastName}"/> 

次に、テキストボックスまたは「プレースホルダ」テキストが表示されなくなりました。これにより、UserControl上のすべてのコントロールの位置とサイズを調整することが非常に困難になります。 WinFormasプログラミングでは、Textプロパティとは独立してバインディング情報を設定できるため、デザイン時の開発中にプレースホルダテキストを少なくとも見ることができます。目に見えないTextBlocksの束を視覚的に配置するのはかなり難しいでしょう!これに対する標準的な解決策は何ですか?

+4

これはあなたの質問に対する回答ではありませんが、一般的には視覚的なXAMLデザイナとdrag'n'drop XAMLデザインを一般的に使用し、マークアップを直接使用することを推奨します。 HTMLの場合と同様に、レイアウトを行うと適切なリフロー/サイズ変更のレイアウトが得られます。 'StackPanel'と' Grid'を使って作業することを学び、視覚的にコントロールを忘れて悪い夢のように一致させることを忘れないでください。 –

+1

Pavelと同意100%;最初はWinFormsからXAMLに移行するときに、ビジュアルデザイナを使用してウィンドウをデザインしようとしました。マークアップを手作業で書くよりもはるかに遅く、あなたが望むものは決して得られません。 XAML、レイアウトパネル、およびそれらに付随するさまざまなプロパティに精通している時間を過ごすと、UIデザインの配当を支払うことになります。 – Charlie

+0

デザイナーは、XAMLの特定の場所をすばやくズームする方法と考えてください。これは、WinFormsデザイナーの包括的なツールのようなものではありません。 –

答えて

0

それは同じ色だ場合は、十分に目に見えるものにTextBlockBackgroundを変更することができますその後ろのビジュアルとして「HorizontalAlignment」を「ストレッチ」に設定します。これにより、利用可能な幅が埋められます。つまり、MinWidthを明示的な番号に設定します。テキストは表示されませんが、表示されます。

関連する問題