Jump to content
Xtreme .Net Talk

divil

*Gurus*
  • Posts

    3026
  • Joined

  • Last visited

Everything posted by divil

  1. I used to use DotNetBar, I would recommend it as a comprehensive suite of UI controls. Its downsides are that its designer support isn't too great, and you have to include a ~900kb dll with your application. I even have a license I might be able to sell you since I don't use it myself any more. If you're not in a hurry, there will be a major new version of my own menu and toolbar library which supports floating etc sometime in the next few months.
  2. Yes, controls created at runtime are present in whatever container they were added to. If you added them to the Controls collection of the form, they will be there. If you added them to the Controls collection of a groupbox, they will be there.
  3. Does it use standard http authentication, or forms-based authentication?
  4. The best way of sorting listview is with a ListViewItemComparer. Create yourself a class that implements IComparer. Give it a constructor that takes a column index and a boolean value indicating whether to sort in reverse. The key method to implement is Compare, which passed two values x and y. These will always be strings in the case of the listview. The simplest way to compare them is therefore a string compare, in which case you can just return String.Compare((string)x, (string) y), obviously negating that if you're sorting in reverse. If you know which column you are sorting (you should) you can use more advanced comparers, like DateTime.Compare etc. To apply your sorter to a column, use code like thisin the ColumnClick event: myListView.ListViewItemSorter = new MySorter(e.Column, false); myListView.Sort; It's up to you to record whether the current column is being sorted in reverse order and to adjust the second parameter accordingly.
  5. Check out the following article for a fairly easy way of doing this using an internal class in the framework. If you would rather do it yourself by implementing some COM interfaces and calling functions in the Fusion dll, let me know and I'll post some of my code for you. http://www.codeproject.com/dotnet/undocumentedfusion.asp
  6. Could it be that you are assigning to the SmallImageList property and not the LargeImageList property? I assume the imagelist you're binding to has images of a large size.
  7. Have you considered creating a feature limited version instead of time limited? If you do, you can use Conditional Compilation to make such a process quite easy. The trouble with time-limited versions is that there are any number of ways to circumvent the protection. If the feature isn't compiled in there in the first place, there's no way around it.
  8. System.Net.WebClient wc = new System.Net.WebClient(); byte[] data = wc.DownloadData(@"http://www.microsoft.com/homepage/gif/bnr-microsoft.gif"); System.IO.MemoryStream ms = new System.IO.MemoryStream(data); pictureBox1.Image = new Bitmap(ms);
  9. Icons are often best left in their original icon format, using the Icon class. If you want to extract a certain sized icon from an existing icon, you use the constructor of the Icon class, passing in the original instance and the size you want.
  10. When specifying a path that contains spaces, the entire path needs to be enclosed in double quotes. csc.exe /out:"Hello World/hello.world.dll" /target:libarary *.cs
  11. Also, the various methods of the ControlPaint class are designed to wrap the DrawFrameControl API, you should check it out.
  12. The documentation can better than I can, but you use the Application class to start an application-wide message loop. Control does not return from calling Application.Run() until Application.Exit() is called so it's essential in cases like this where you application needs to be idle but not exit until you specify.
  13. I think that when specifying the datasource, you specify the directory the file is in, not the file itself. You specify the file when opening the table. This is just from memory.
  14. It's worth noting that GetCurrentDirectory will not _always_ be the same as your executable path - if the user has specified a working directory in the shortcut to your application it will be this instead.
  15. This will do what you need. Friend Class Class1 Dim WithEvents p As Process Public Shared Sub Main() Dim c As New Class1 c.Start() End Sub Public Sub Start() Dim ps As New ProcessStartInfo("notepad.exe") p = Process.Start(ps) p.EnableRaisingEvents = True Application.Run() End Sub Private Sub p_Exited(ByVal sender As Object, ByVal e As System.EventArgs) Handles p.Exited Application.Exit() End Sub End Class
  16. C# and VB.NET will have generics in the next version.
  17. I must say, it grows on you. It looks a lot better in classic mode than it does in themed mode, because it grabs the gray system colours rather than the blues/greens/whatever of the theme you're using.
  18. Are you talking about a BBC Microcomputer? I used to enjoy writing music on those using BASIC back in school.
  19. What ComponentOne controls are included?
  20. On the contrary, there are many significant changes and additions to the framework for the Whidbey release - it has been given a 2.0 version to reflect this. Whidbey will coincide with the release of SQL Server "Yukon" which hosts the CLR for pretty deep integration between the two.
  21. Derek, you're not the first. http://www.xtremedotnettalk.com/showthread.php?s=&threadid=75459
  22. Look in to the RedirectStandardInput property of the ProcessStartInfo class.
  23. Esposito, I suggest you purchase Remotesoft .NET Protector. This is the only application on the market that completely protects .NET assemblies from automatic decompilation back to .NET source code. It compiles the assemblies to native code so you are offered the same level of protection as you would have against someone decompiling a natively-compiled VB5/6 executable. It's a completely different process from obfuscation, and it leaves the assembly manifest intact so all your existing code to interop with the assembly should still work. It's just that instead of IL instructions inside, you'll have native machine code. Note that this is a different process from ngen; ngen doesn't replace the contents of the original assembly. Instead, it stores it in a special location within the fusion cache.
  24. divil

    Tasks

    Items labelled TODO, HACK and UNDONE will be copied to the task list window.
  25. I installed the full version of it on Monday - now I am compelled to mimic the new toolbar/menu styles in my control suite :)
×
×
  • Create New...