2014-02-09 39 views
0

好,我似乎遇到了一個障礙和不知道爲何添加一個廣告每x線

我創建的廣告代碼:

AdControl myad = new AdControl("test_client", "Image480_80", true); 
myad.Width = 480; 
myad.Height = 80; 

內環路後來我有

if (r % 3 == 0) 
{ 
    ContentPanel.Children.Add(myad); 
    r++; 
} 

TextBlock txt = new TextBlock(); 
txt.TextWrapping = TextWrapping.Wrap; 
txt.Text = s.Name; 

Button btn = new Button(); 
btn.Name = "btn" + a.ToString(); 
btn.Content = txt; 
btn.Width = SCREENWIDTH/BUTTONSPERROW; 
btn.Height = btn.Width; 
btn.Background = new SolidColorBrush((App.Current.Resources["PhoneAccentBrush"] as SolidColorBrush).Color); 
btn.VerticalAlignment = System.Windows.VerticalAlignment.Top; 
btn.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; 
btn.Click += btn_Click; 
btn.Hold += btn_Hold; 
btn.Tag = s; 
btn.Margin = new Thickness((SCREENWIDTH/BUTTONSPERROW) * c, r * 150, 0, 0); 

ContentPanel.Children.Add(btn); 
//work out next position 
if (c == BUTTONSPERROW - 1) { c = 0; r++; } 
else { c++; } 

a++; 

一切工作,直到ContentPanel.Children.Add(myad);被添加的廣告線 Id我評論它的一切工作,並且它將有一個空白。 鑑於ContentPanel.Children.Add(btn);線路正常工作,我很困惑爲什麼myad線路不能正常工作。有任何想法嗎?

+0

您需要每次添加一個新的實例,而不是重用你唯一的一個。你現在做的方式會在第一次添加「myad」,隨後所有時間都會被移動。 – JonPall

回答

1

創建新AdControl內循環,並將其添加像下面

if (r % 3 == 0) 
{ 

    AdControl myad = new AdControl("test_client" + r, "Image480_80", true); 
    myad.Width = 480; 
    myad.Height = 80; 
    ContentPanel.Children.Add(myad); 
    r++; 
}