Есть ли способ обновить только текст элемента управления выбора даты, а не детали форматирования? - PullRequest
0 голосов
/ 16 октября 2019

Я работаю над одним word add-in приложением, в котором у меня есть несколько элементов управления для выбора даты , и для этого элемента управления содержимым устанавливается текстовое значение . также изменяет его формат согласно системному формату даты .

Я настраиваю DateDisplayFormat и DateDisplayLocale все еще явно показывает значение даты в формате системной даты.

ContentControl.Range.Text = "21-12-16";
ContentControl.DateDisplayFormat ="yy-M-d";
ContentControl.DateDisplayLocale = 
Microsoft.Office.Interop.Word.WdLanguageID.wdSimplifiedChinese;

Мой системный формат даты: ММ / дд / гггг

-Actual result : 16-12-21 (MM/dd/yyyy)
-Expected result : 21-12-16 (yy-M-d)

1 Ответ

0 голосов
/ 17 октября 2019

Я полагаю, что проблема возникает из-за неоднозначности Range.Text = 16-12-21.

Это можно интерпретировать в любом случае, например, 2016 год или 2021 год. Слово действительно полагается наСистемные настройки Windows для таких вещей, как интерпретация даты, а не что-либо локальное. Я подумал, что, возможно, изменение порядка форматирования и ввода данных может оказать влияние, но это не так.

Просто укажите четырехзначный год, что является стандартной практикой каждый раз, когда люди осознали потенциал ". тысячелетия "проблемы еще в 1990-х, и нет проблем. Также нет проблем, когда кто-то использует DatePicker в пользовательском интерфейсе. Итак ...

ContentControl.Range.Text = "2021-12-16";
ContentControl.DateDisplayFormat ="yy-M-d";
ContentControl.DateDisplayLocale = 
Microsoft.Office.Interop.Word.WdLanguageID.wdSimplifiedChinese;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...