WPF StackPanel间距问题

时间:2010-03-31 05:56:09

标签: wpf stackpanel

我的stackpanels在每个项目之间都有间隙(TextBlocks)。您可以看到背景画布背后的任何内容。我不想要差距。 我尝试将stackpanel和textblocks的边距设置为零。没有解决它。 在Blend中创建相同的东西显示没有间隙(AFAIK)。

stackpanel http://www.synthedit.com/test-files/stackpanel.png在这里你可以看到鼠标/驼鹿背后的物体通过间隙显示。

StackPanel^ tstack = gcnew StackPanel;
canvas->Children->Add( tstack );
canvas->SetLeft( tstack, 100 );
canvas->SetTop( tstack, 100 );
canvas->SetZIndex( tstack, 3 );

TextBlock^ tBlock = gcnew TextBlock();
tBlock->FontSize = 10;
tBlock->Text = L"mouse";
tBlock->Background = Brushes::LightGray;
tstack->Children->Add( tBlock );

tBlock = gcnew TextBlock();
tBlock->FontSize = 10;
tBlock->Text = L"moose";
tBlock->Background = Brushes::LightGray;
tstack->Children->Add( tBlock );

1 个答案:

答案 0 :(得分:2)

不需要设置边距。在Kaxaml中进行的一项简单测试证实,元素之间应该没有差距。两个可能的原因是:1)在应用程序资源中或在可视树中的某个位置设置的隐式样式,或2)SnapsToDevicePixels = false或在可视树中的某处使用UseLayoutRounding = true。