2010-03-31 5 views
2

내 스택 패널에 각 항목 (TextBlocks) 사이에 간격이 있습니다. 백그라운드 Canvas에 무엇이 있는지 뒤에 볼 수 있습니다. 나는 갭을 원하지 않는다. stackpanel과 textblocks의 여백을 0으로 설정하려고했습니다. 그것을 고쳐주지 않았다. 블렌드에서 동일한 것을 생성해도 틈이 없음을 알 수 있습니다 (AFAIK).WPF StackPanel 간격 문제

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); 

답변

2

여백을 설정할 필요가 없습니다. Kaxaml의 간단한 테스트는 요소 사이에 간격이 없어야 함을 확인합니다. 가능한 원인은 1) 응용 프로그램 리소스 또는 시각적 트리의 어딘가에 설정된 암시 적 스타일이거나 2) 시각적 트리의 SnapsToDevicePixels = false 또는 UseLayoutRounding = true 일 수 있습니다.

+0

당신은 남자입니다! Canvas에서 SnapsToDevicePixels = true로 설정합니다. 이제 괜찮아. –