Jag har fått ett underligt felmeddelande när jag försöker ta omhand om det valda filnamnet som jag har valt mha OpenFileDialog kontrollen. Har du testat att lägga till en ".ToString()" efter parametern från dialogrutan? Eller att göra en explicit cast ändå med (String)? Hej. Hittade följande kod på nätet om den hjälper: Detta fungerade bättre.Underligt felmeddelande??
Felmeddelandet säger - Cast from type 'OpenFileDialog' to type 'String' is not valid. Vad menas med detta? Jag försöker hämtar ju FileName som är av typen string. Har ngn en lösning?
<code>
If rbutNET.Checked Then
OpenFileDialog1.Filter = NET_FILTER
Else
OpenFileDialog1.Filter = VB_FILTER
End If
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
'-Här inträffar mitt fel!!
txtOpenProject.Text = OpenFileDialog1.FileName
End If
</code>
//UJSv: Underligt felmeddelande??
Ny på .Net än så länge så detta var tyvärr det enda jag kom att tänka på - hoppas du kommer på vad felet är (vore intressant att veta).
// QezSv: Underligt felmeddelande??
Japp, jag har testat både .ToString och CType(...,String) men har erhållit samma resultat. Suck! Mer idéer är välkommet.
//UJSv: Underligt felmeddelande??
<code>
Dim dgrResult As DialogResult
dlgOpen.InitialDirectory = Application.StartupPath
dgrResult = dlgOpen.ShowDialog()
If dgrResult <> DialogResult.Cancel Then
'User didn't click the Cancel button
datPhone = New StreamReader(dlgOpen.FileName)
btnNext.Enabled = True
btnNext_Click(sender, e)
End If
</code>
Kan som sagt inte VB.Net än... :-)
<br><br>
<b>// Qez</b>Sv: Underligt felmeddelande?? LÖSNING
//UJ
<code>
dim myOpenFileDialoge as new OpenFileDialoge
If rbutNET.Checked Then
myOpenFileDialoge.Filter = NET_FILTER
Else
myOpenFileDialoge.Filter = VB_FILTER
End If
If myOpenFileDialoge.ShowDialog() = DialogResult.OK Then
'-Här inträffar mitt fel!!
txtOpenProject.Text = myOpenFileDialoge.FileName
End If
</code>