Oto kolejny obejść, można użyć bardziej złożonych funkcji Win32 API, aby uzyskać dostęp do combobox pliku i zrobić cokolwiek chcesz, ale to działa przy użyciu SendKeys
, nie mam czasu, aby zagłębić się w funkcje Win32 API w tym czasie:
public Form1()
{
InitializeComponent();
t.Interval = 100;
t.Tick += (s, e) =>
{
SendKeys.Send("{HOME}+{END}");
t.Stop();
};
}
Timer t = new Timer();
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog open = new OpenFileDialog();
open.FileName = "I love .NET so much";
t.Start();
open.ShowDialog();
}
Nie mogę wyjaśnić tego błędu, ale jest kilka prac dookoła, a powyższy jest jednym z nich.
Czy dzieje się to z innymi wartościami domyślnymi? Na przykład, w jaki sposób pojawia się 'foobar_FOOBAR.csv'? –
Myślę, że jest to błąd w systemie .. https://connect.microsoft.com/VisualStudio/feedback/details/525070/openfiledialog-show-part-of-file-name-in-win7# – Bolu
Może to być błąd, ale nie znalazłem żadnego problemu z moją aplikacją. Próbowałem nazwę jako answer_XXXXXX123456.csv, nie dał żadnego problemu. Ale tak, jeśli podasz dłuższą nazwę, zobaczysz nazwę pliku, którą musisz przewinąć w lewą stronę, aby zobaczyć pełną nazwę pliku. :) –