1

プログラムでN個の要素をWP7コントロールに追加して、それらが互いに下になるようにするにはどうすればよいですか(現在、すべてが1つの場所にあり、互いに重なり合っています)。

//this code N times
TextBlock block = new TextBlock();
block.Text = message.Body;
ContentPanel.Children.Add(block);
4

3 に答える 3

1

StackPanelを作成し、それにコントロールを追加します。

http://msdn.microsoft.com/en-us/library/system.windows.controls.stackpanel.aspx

于 2012-08-09T22:37:19.553 に答える
1

ここでの基本的な問題は、追加する要素のx座標とy座標がすべて同じであるということです。したがって、それらはすべて1つの場所にあります。グリッドレイアウトはこれを処理しないため。

これに対する答えは、stackpanelを使用するか、uielement.marginを個別に定義することです。価値。マージンは基本的に厚み要素です。同じ問題が発生していましたが、要素のx座標とy座標を変更することを利用しました。uielement.margin.left = previousUiElement.margin.left+6;を使用しました。uielement.margin.top = previousUiElement.margin.top + 36;

要件が何であれ、6を変更します。

于 2012-08-10T17:24:02.567 に答える
0
private Ellipse GenerateEllipse()
{
    Ellipse element = new Ellipse();
    element.Fill = new SolidColorBrush(Colors.White);
    element.Height = 8.0;
    element.Width = 8.0;
    this.ContentPanel.Children.Add(element);
    return element;
}

その後、 forサイクルでメソッドを呼び出す方法。

お役に立てれば。

于 2012-08-10T09:18:22.043 に答える