2012-03-07 31 views
0

這可能是一個winforms newb錯誤,但我創建了一個用戶控件,它上面有一個組件 - 一個Telerik下拉列表控件。當我最初將它放在窗體上時,它看起來是正確的。但是,只要我運行表單,控件就會展開表單。用戶控件一直放在窗體上一直拉伸

用戶控件上的下拉列表將其錨點屬性設置爲top/left/right/bottom。

前:

Here's what it looks like immediately after dropping it on the form

後:

Here's what it looks like after running

到底什麼我做錯了嗎?

編輯:多一點信息:如果我關閉設計器並打開備份,它會立即改變大小。代碼本身似乎不會導致問題。實際上,我註釋掉了所有的代碼(除了InitializeComponent()調用),我仍然看到了這個問題。控件本身仍然有效 - 當我運行表單時,它會填充我期待的數據。它只是伸展。

我可以通過將下拉列表的寬度設置爲比我實際希望的大小小35個像素來「解決」問題,因此當它調整大小時,它實際上是正確的寬度,但我真的不應該不得不。

+0

用戶控件的形式?您是否嘗試「識別」(例如,分配不同的背景顏色,藍色下拉框,紅色的用戶控件...),每個控件都在哪裏? – 2012-03-07 15:49:39

+0

可能您可以發佈一些代碼來向我們展示如何實現控件 – Benni 2012-03-07 15:58:54

+0

從設計人員,如果調整包含用戶控件的表單的大小,是否會看到此問題?檢查用戶控件和用戶控件上的組件上的錨定設置。 – roken 2012-03-07 16:12:34

回答

0

您可能是在正確的軌道上。它看起來好像正在錨定在離頁面很遠的地方。我會嘗試刪除初學者的錨點,以查看其具有的效果。如果這不起作用,也許嘗試錨定的不同組合,以查看它對控制有什麼影響。

確保沒有啓用對接設置,因爲它會撤銷對控件的任何錨定。

檢查是否包含dropdownlist控件。你說它是在一個usercontrol中,但是它在UC的網格中還是其他類似的東西?另外,確保用戶控件尺寸正確(不超出頁面邊界) - 會導致錨定問題。使用背景顏色來測試。

接下來,我會檢查控件的最大/最小大小(也許考慮設置一個?)。

如果一切都失敗,請刪除下拉列表並創建一個新列表,看看是否有同樣的問題。有時候,代碼的設計者一方會出現問題,並且會導致問題,或者你只是意外地改變了你不想要的東西。

最後,不得已,只是使用正常的drowndownlist;)