Please do not reply to this email- if you want to comment on the bug, go to the URL shown below and enter your comments there.
Changed by [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=82618 --- shadow/82618 2007-08-28 15:49:18.000000000 -0400 +++ shadow/82618.tmp.31247 2007-08-29 07:48:10.000000000 -0400 @@ -2,13 +2,13 @@ Product: Mono: Class Libraries Version: 1.2 OS: All OS Details: Status: NEW Resolution: -Severity: +Severity: Unknown Priority: Normal Component: Windows.Forms AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] QAContact: [EMAIL PROTECTED] TargetMilestone: --- @@ -181,6 +181,67 @@ at MainForm.Main () [0x00000] ------- Additional Comments From [EMAIL PROTECTED] 2007-08-28 15:49 ------- Created an attachment (id=19912) Repro + +------- Additional Comments From [EMAIL PROTECTED] 2007-08-29 07:48 ------- +In summary, a fix to this is to set also the Tag property at line +438 in FolderBrowserDialog.cs, resulting in: + new_node.Tag = new_node.RealPath = fullPath; + +Tested only on Win32. + + +It's unclear what the various properties on FBTreeNode (Text, Tag, +RealPath) and FSEntry (Name, FullName, RealName) are used for, +however printf-debugging shows the following for FBTreeNode: + +Node-- Text: 'Desktop', + Tag: 'Desktop://', + RealPath: 'D:\Documents and Settings\alan\Desktop' +Node-- Text: 'Personal', + Tag: 'Personal://', + RealPath: 'D:\Documents and Settings\alan\My Documents' +Node-- Text: 'My Computer', + Tag: 'MyComputer://', + RealPath: 'MyComputer://' +Node-- Text: 'My Network', + Tag: 'MyNetwork://', + RealPath: 'MyNetwork://' +Node-- Text: 'Dsktop-D', + Tag: 'D:\Documents and Settings\alan\Desktop\Dsktop-D', + RealPath: 'D:\Documents and Settings\alan\Desktop\Dsktop-D' +Node-- Text: 'foo', + Tag: 'D:\Documents and Settings\alan\Desktop\foo', + RealPath: 'D:\Documents and Settings\alan\Desktop\foo' +Node-- Text: 'Unused Desktop Shortcuts', + Tag: 'D:\Documents and Settings\alan\Desktop\Unused Desktop +Shortcuts', + RealPath: 'D:\Documents and Settings\alan\Desktop\Unused Desktop +Shortcuts' +Node-- Text: 'foo', + Tag: 'D:\Documents and Settings\alan\Desktop\foo', + RealPath: 'D:\Documents and Settings\alan\Desktop\foo' +Node-- Text: 'New Folder', + Tag: '', + RealPath: 'D:\Documents and Settings\alan\Desktop\foo\New Folder' + +So for a 'normal' folder, Tag is equal to RealPath. + +(((This can be seen by code inspection also. FillNode has: + FBTreeNode child = new FBTreeNode (fsentry.Name); + child.Tag = fsentry.FullName; + child.RealPath = fsentry.RealName == null ? fsentry.FullName : +fsentry.RealName; + child.ImageIndex = NodeImageIndex (fsentry.FullName); + +So RealPath is FSEntry.FullName, unless FSEntry.RealName is set. + +And FileSystem has: + FSEntry GetDirectoryFSEntry (DirectoryInfo dirinfo,...) + {... + fsEntry.FullName = dirinfo.FullName; + ...} +With no setting of RealName there. It is only set with the creation +of special-folders in UnixFileSystem/WinFileSystem..ctor)). _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
