2012-07-27 62 views
2

我正在通過附屬程序集來本地化WinForms應用程序。我面臨的問題是,當我從英語切換到其他某種語言(如日語)時,由於文本更改,標籤會重疊(或落後)組合框。文本中的更改會導致標籤寬度增加,使其跳轉到其他控件。.NET WinForms本地化 - 如何根據文本長度控制位置

有沒有辦法(也許通過錨定)來克服這個問題,以便組合框自動減小寬度以補償標籤大小的增加?像錨定WRT控件而不是表單。

UPDATE
好的。我想我已經找到了這個解決方案。該表單有一個語言屬性,該屬性用於爲表單設置語言特定的屬性。如果我將其更改爲日語並對錶格佈局和控件位置進行更改,那麼這些特定於語言的項目將存儲在每個表單的新.RESX文件中。 Satellite組件仍將用於提供本地化的字符串,但這些RESX文件將相應地調整表單元素的大小。這是正確的方式嗎?

回答

1

表單具有一個語言屬性,用於爲表單設置語言特定的屬性。如果我將其更改爲日語並對錶格佈局和控件位置進行更改,那麼這些特定於語言的項目將存儲在每個表單的新.RESX文件中。 Satellite組件仍將用於提供本地化的字符串,但這些RESX文件將相應地調整表單元素的大小。

0

我不知道任何可以令你滿意的問題解決。
有屬性AutoEllipsis = True(與AutoSize = False)可以緩解這種情況。

如果設置爲True,則當文本超出標籤尺寸時,此屬性在標籤右側插入三個點。將鼠標放置在標籤上將顯示全文的工具提示。

相關問題