2012-11-20 63 views
0

我們的應用程序的目標是.net4.0,代碼是在vb.net和C#項目組合。這個特定的項目是vb.net。我的開發機器是Windows 7x64專業版與VS 2010 sp1和VS2010 + Windows 8x64 VMWare機器。TableLayoutPanel中的列順序和Windows 8

在Windows 7中我們TableLayoutPanel中正確地顯示在設計時將得到執行的WinForms應用程序。然而,在Wondows 8中運行我們的應用程序,我們發現TableLayoutPanels中列的順序是混合的。

我附上截圖,現在起初我們只是覺得它的東西做了Windows 8工程和hopeed在Windows 8重新編譯就解決它。不!在windows 8中打開相同的源文件,按照附加的屏幕截圖顯示,混合了各列。所以我們固定了順序,編譯並在Windows 8中顯示正常,但在Windows 7中,我們再次混合了列順序。

所以修復它在任一窗口7或8與其他節目是否有誤?

任何人都可以提供任何建議嗎?它不像我們可以通過電子郵件微軟的答案,並期待不久的修復。

screenshot

編輯:我們真的堅持了這一點,沒有人有任何想法/建議?

EDIT2:MSDN社區支援告訴我connect.microsoft.com培養它,我已經做了,但我不希望它永遠不會得到解決。所以我將不得不用別的東西替換這個用戶控件,並希望我沒有發現類似問題的其他用戶控件,否則Windows 8支持將永久擱置。 打算關閉它,因爲它被接受爲錯誤,並且不會很快被修復。

回答

1

爲別人這個問題。
我收到connect.microsoft的回覆,它於2013年1月8日發佈了修正版。


發佈Microsoft在17/01/2013在17:52 感謝您的反饋意見。我們能夠重現此問題,並確認它已在最新版本的.Net Framework 4.5中得到修復,該更新從1月8日開始在Windows Update上提供。

許多客戶認爲在論壇(http://www.microsoft.com/communities/forums/default.mspx)討論類似這樣的問題很有用,微軟和其他社區成員可以在這些論壇上提出解決方法。請保留反饋意見。

感謝, Windows窗體隊

1

- 我的蹩腳建議是嘗試'滾動你自己的' - 也許ide的兩個版本正在攪亂秩序。

所有你在上面顯示的表的佈局可以用代碼來完成,而可能避免7 我發現這個在 http://social.msdn.microsoft.com/Forums/en/vbgeneral/thread/4e6bc84b-b465-4bee-9316-c0ee68d9fa20

昏暗TLP作爲新TableLayoutPanel中正在使用Windows 8和Windows見到的麻煩
tlp.ColumnCount = 3
tlp.RowCount = 5
tlp.AutoSize =真

Dim labels(4) As Label 
    For i As Byte = 0 To 4 
     labels(i) = New Label 
     labels(i).Text = "Label number " & i 
     tlp.Controls.Add(labels(i), 0, i) 
    Next i 

    Dim comboboxes(4) As ComboBox 
    For i As Byte = 0 To 4 
     comboboxes(i) = New ComboBox 
     comboboxes(i).Items.AddRange _ 
     (New String() {"first item", "second item", "item number 3"}) 
     tlp.Controls.Add(comboboxes(i), 1, i) 
    Next i 

    Dim firstRowButton As New Button 
    firstRowButton.Text = "New button!" 

    tlp.Controls.Add(firstRowButton, 2, 0) 

    Dim thirdRowTextBox As New TextBox 
    tlp.Controls.Add(thirdRowTextBox, 2, 2) 

    Me.Controls.Add(tlp) 

轉到OD運氣

+0

是啊,我懷疑我將不得不手動創建和執行順序。感謝您的回覆。 – Matma