|
Handle it in the MouseDown event like this.
Dim ht As HitTestInfo = Me.HitTest(e.X, e.Y)<br />
If (e.Button = MouseButtons.Right) Then<br />
If ht.Type = DataGrid.HitTestType.Cell Then<br />
Me.Select(ht.Row)<br />
End If<br />
End If
|
|
|
|
|
Is there a property that can be set for a ListView that will allow it to show (or block) certain file types?
I have directories that contain several image file and a few text files. In my list view, I want to display only the TEXT files.
I can cycle through the files and display only the *.txt files but this is time consuming since most of the files are not text files so I’m just trying to find a more efficient way.
Thanks.
Brad
|
|
|
|
|
No, you have to filter the list yourself, just as your doing. The ListView doesn't offer any kind of built-in filtering.
If your binding the ListView to a datasource, you can apply filtering to the dataview that your binding to, but that's about it.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Thanks Dave.
After playing around with my code I found that I was looping some things that I didn’t need to. It still hesitates but it’s acceptable.
Brad
|
|
|
|
|
There is a object defined as:
CREATE TYPE Book_t AS OBJECT(
name varchar(10),
author varchar(10));
CREATE TYPE BookSet AS TABLE OF Book_t
and a function defined as:
CREATE FUNCTION GetBooks() RETURN BookSet
How do I call this from a VB.NET application?
|
|
|
|
|
MS says "Snaps-Ins can be designed to function in Web browsers as well as the MMC." I've written an MMC snap-in with VB6, but how can I put the snap-in in a Web browser?
|
|
|
|
|
I've developed a program that reads animations (in GIF format) it reads each frame and I can display each frame on a Form in seperate PictureBoxes, what I would like to do is save the entire picture as a bitmap or a jpeg, which I can't do is there anyway to do this can someone help me.
|
|
|
|
|
What do you mean by "entire picture"? Are you trying to save the full animation of the .GIF as a .BMP or .JPG? You can't because neither format supports frames. They don't support animation...
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
what i mean is that when I click on a button called Add Frames, it adds each animation frame onto seperate picture boxes, which displays each animation frame as a bitmap on seperate picture box. This is what I want to save. I will list my code here. If you go through my code you will see that each each animation frame of a gif is separteley displayed on seprate picture boxes this is what i want to save, all individual bitmaps which are on their own picture boxes as a complete bitmap or jpeg. here is my code:
This is my animation class that grabs each frame of the animation:
Imports System
Imports System.Drawing
Imports System.Drawing.Image
Imports System.Runtime.Serialization.Formatters.Binary
Public Class Animation
Implements IDisposable
Dim m_Img As System.Drawing.Image
Dim m_Frames As New System.Collections.ArrayList
Dim m_FrameCount As Integer
Dim i As Integer = 0
Dim m_Width, m_Height, xWidth, yHeight As Integer
Dim array As New ArrayList
Dim FCount As Integer
Public Sub New(ByVal imgPath As String)
'Load Image
m_Img = System.Drawing.Image.FromFile(imgPath)
xWidth = m_Img.Width
yHeight = m_Img.Height
'Check if It's an Animation
If System.Drawing.ImageAnimator.CanAnimate(m_Img) = False Then
m_Img.Dispose()
'if not animation throe a new exception
Throw New Exception("This is not a Animation")
End If
'Count Animation Frames
Dim fdl As New Drawing.Imaging.FrameDimension(m_Img.FrameDimensionsList(0))
m_FrameCount = m_Img.GetFrameCount(fdl)
'extract the first frame and start animation to extract all frames
AddCurrentFrame()
System.Drawing.ImageAnimator.Animate(m_Img, New EventHandler(AddressOf OnFrameChanged))
Do 'Loop until end of frame
Loop Until Done
End Sub
Public Sub Dispose() Implements System.IDisposable.Dispose
StopAnimate()
End Sub
Public ReadOnly Property FrameCount() As Integer
Get
Return m_FrameCount
End Get
End Property
Public ReadOnly Property AnimWidth() As Integer
Get
Return xWidth
End Get
End Property
Public ReadOnly Property AnimHeight() As Integer
Get
Return yHeight
End Get
End Property
Public ReadOnly Property Frame(ByVal index As Integer) As System.Drawing.Bitmap
Get
Return DirectCast(m_Frames(index), System.Drawing.Bitmap)
End Get
End Property
Private Sub OnFrameChanged(ByVal sender As Object, ByVal e As EventArgs)
If Done Then
StopAnimate()
Exit Sub
End If
System.Drawing.ImageAnimator.UpdateFrames(m_Img)
AddCurrentFrame()
End Sub
Private Sub AddCurrentFrame()
'Create new Empty Bitmap
Dim bmp As New Bitmap(xWidth, yHeight)
Dim pos, pos2 As Point
Dim g As Graphics = System.Drawing.Graphics.FromImage(DirectCast(bmp, System.Drawing.Image))
pos = New Point(0, 0)
g.DrawImage(m_Img, pos)
m_Frames.Add(bmp)
'g.DrawImage(m_Img, New Rectangle(i, 0, xWidth, yHeight))
'm_Frames.Add(bmp)
End Sub
' Return True when the class has extracted all the frames
Private ReadOnly Property Done() As Boolean
Get
Return m_Frames.Count = FrameCount
End Get
End Property
' Stop the animation and dispose the open image object
Private Sub StopAnimate()
System.Drawing.ImageAnimator.StopAnimate(m_Img, _
New EventHandler(AddressOf OnFrameChanged))
m_Img.Dispose()
End Sub
Public Sub NextFrame()
i = i + xWidth
End Sub
End Class
and Here is my main code:
Imports System
Imports System.Drawing
Imports System.Drawing.Image
Imports System.Drawing.Imaging
Imports System.IO
Public Class Form1
Inherits System.Windows.Forms.Form
Dim i As Integer = 1
Dim count As Integer = 1
Dim bmp As Bitmap
Dim g As Graphics = CreateGraphics()
Dim im() As Image
Dim strFileName As String
Dim rect As Rectangle
Dim m_MouseDown As Boolean = False
Dim Anim As Animation
Dim PicBoxCount As Integer = 1
Dim FrameCount As Integer = 1
Dim xPos As Integer = 0
Dim yPos As Integer = 32
Dim PictureBox() As PictureBox
'Dim sz As Size
'Dim sz As New Size(100, 60)
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
Friend WithEvents MainMenu1 As System.Windows.Forms.MainMenu
Friend WithEvents MenuItem1 As System.Windows.Forms.MenuItem
Friend WithEvents MenuItem2 As System.Windows.Forms.MenuItem
Friend WithEvents MenuItem3 As System.Windows.Forms.MenuItem
Friend WithEvents MenuItem4 As System.Windows.Forms.MenuItem
Friend WithEvents MenuItem5 As System.Windows.Forms.MenuItem
Friend WithEvents MenuItem6 As System.Windows.Forms.MenuItem
Friend WithEvents MenuItem7 As System.Windows.Forms.MenuItem
Friend WithEvents tb As System.Windows.Forms.ToolBar
Friend WithEvents ImageList1 As System.Windows.Forms.ImageList
Friend WithEvents btnNew As System.Windows.Forms.ToolBarButton
Friend WithEvents btnOpen As System.Windows.Forms.ToolBarButton
Friend WithEvents btnSave As System.Windows.Forms.ToolBarButton
Friend WithEvents btnDraw As System.Windows.Forms.ToolBarButton
Friend WithEvents MenuItem8 As System.Windows.Forms.MenuItem
Friend WithEvents HScrollBar1 As System.Windows.Forms.HScrollBar
Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox
Friend WithEvents MenuItem9 As System.Windows.Forms.MenuItem
<system.diagnostics.debuggerstepthrough()> Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container
Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1))
Me.MainMenu1 = New System.Windows.Forms.MainMenu
Me.MenuItem1 = New System.Windows.Forms.MenuItem
Me.MenuItem2 = New System.Windows.Forms.MenuItem
Me.MenuItem3 = New System.Windows.Forms.MenuItem
Me.MenuItem4 = New System.Windows.Forms.MenuItem
Me.MenuItem5 = New System.Windows.Forms.MenuItem
Me.MenuItem8 = New System.Windows.Forms.MenuItem
Me.MenuItem6 = New System.Windows.Forms.MenuItem
Me.MenuItem7 = New System.Windows.Forms.MenuItem
Me.tb = New System.Windows.Forms.ToolBar
Me.btnNew = New System.Windows.Forms.ToolBarButton
Me.btnOpen = New System.Windows.Forms.ToolBarButton
Me.btnSave = New System.Windows.Forms.ToolBarButton
Me.btnDraw = New System.Windows.Forms.ToolBarButton
Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components)
Me.HScrollBar1 = New System.Windows.Forms.HScrollBar
Me.PictureBox1 = New System.Windows.Forms.PictureBox
Me.MenuItem9 = New System.Windows.Forms.MenuItem
Me.SuspendLayout()
'
'MainMenu1
'
Me.MainMenu1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem1, Me.MenuItem6, Me.MenuItem9})
'
'MenuItem1
'
Me.MenuItem1.Index = 0
Me.MenuItem1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem2, Me.MenuItem3, Me.MenuItem4, Me.MenuItem5, Me.MenuItem8})
Me.MenuItem1.Text = "File"
'
'MenuItem2
'
Me.MenuItem2.Index = 0
Me.MenuItem2.Text = "Open"
'
'MenuItem3
'
Me.MenuItem3.Index = 1
Me.MenuItem3.Text = "Save"
'
'MenuItem4
'
Me.MenuItem4.Index = 2
Me.MenuItem4.Text = "Save As.."
'
'MenuItem5
'
Me.MenuItem5.Index = 3
Me.MenuItem5.Text = "Exit"
'
'MenuItem8
'
Me.MenuItem8.Index = 4
Me.MenuItem8.Text = "Load Animation"
'
'MenuItem6
'
Me.MenuItem6.Index = 1
Me.MenuItem6.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem7})
Me.MenuItem6.Text = "Insert"
'
'MenuItem7
'
Me.MenuItem7.Index = 0
Me.MenuItem7.Text = "Insert Image"
'
'tb
'
Me.tb.Buttons.AddRange(New System.Windows.Forms.ToolBarButton() {Me.btnNew, Me.btnOpen, Me.btnSave, Me.btnDraw})
Me.tb.DropDownArrows = True
Me.tb.ImageList = Me.ImageList1
Me.tb.Location = New System.Drawing.Point(0, 0)
Me.tb.Name = "tb"
Me.tb.ShowToolTips = True
Me.tb.Size = New System.Drawing.Size(736, 28)
Me.tb.TabIndex = 2
'
'btnNew
'
Me.btnNew.ImageIndex = 0
Me.btnNew.ToolTipText = "New"
'
'btnOpen
'
Me.btnOpen.ImageIndex = 1
Me.btnOpen.ToolTipText = "Open Graphics"
'
'btnSave
'
Me.btnSave.ImageIndex = 2
Me.btnSave.ToolTipText = "Save Graphics"
'
'btnDraw
'
Me.btnDraw.ImageIndex = 3
Me.btnDraw.ToolTipText = "Draw Graphics in Memory"
'
'ImageList1
'
Me.ImageList1.ImageSize = New System.Drawing.Size(16, 16)
Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer)
Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent
'
'HScrollBar1
'
Me.HScrollBar1.Location = New System.Drawing.Point(0, 328)
Me.HScrollBar1.Name = "HScrollBar1"
Me.HScrollBar1.Size = New System.Drawing.Size(728, 16)
Me.HScrollBar1.TabIndex = 3
'
'PictureBox1
'
Me.PictureBox1.Location = New System.Drawing.Point(0, 32)
Me.PictureBox1.Name = "PictureBox1"
Me.PictureBox1.Size = New System.Drawing.Size(736, 288)
Me.PictureBox1.TabIndex = 4
Me.PictureBox1.TabStop = False
'
'MenuItem9
'
Me.MenuItem9.Index = 2
Me.MenuItem9.Text = ""
'
'Form1
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(736, 345)
Me.Controls.Add(Me.PictureBox1)
Me.Controls.Add(Me.HScrollBar1)
Me.Controls.Add(Me.tb)
Me.Menu = Me.MainMenu1
Me.Name = "Form1"
Me.Text = "Form1"
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click
Dim oFileOpen As New OpenFileDialog
oFileOpen.Filter = "All Files|*.*|Bitmap|*.bmp|Gif|*.gif|Jpeg|*.jpg|PNG File|*.png"
'oFileOpen.Filter = "All Files(*.*)|*.*|Bitmap(*.bmp)|*.bmp|Gif(*.gif)|*.gif|Jpeg(*.jpg)|*.jpg||PNG Files(*.png)|*.png"
oFileOpen.ShowDialog()
strFileName = oFileOpen.FileName
If strFileName = Nothing Then Exit Sub
'Dim bmp As New Bitmap(strFileName)
ReDim Preserve im(i)
im(i) = New Bitmap(strFileName)
'bmp = New Bitmap(strFileName)
'ReDim Preserve bmp(i)
i = i + 1
'vPicBox.Image = bmp
'PictureBox1.Image = bmp
'bmp(i).FromFile(strFileName)
'i = i + 1
'PictureBox1.Image = bmp(i)
'bmp(i) = New Bitmap
'Dim bmp As New Bitmap(strFileName)
'PictureBox1.Image = bmp
End Sub
Private Sub MenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem7.Click
Dim oFileOpen As New OpenFileDialog
oFileOpen.Filter = "All Files|*.*|Bitmap|*.bmp|Gif|*.gif|Jpeg|*.jpg|PNG File|*.png"
'oFileOpen.Filter = "All Files(*.*)|*.*|Bitmap(*.bmp)|*.bmp|Gif(*.gif)|*.gif|Jpeg(*.jpg)|*.jpg||PNG Files(*.png)|*.png"
oFileOpen.ShowDialog()
strFileName = oFileOpen.FileName
If strFileName = Nothing Then Exit Sub
ReDim Preserve im(i)
im(i) = New Bitmap(strFileName)
i = i + 1
'Dim bmps As New Bitmap(strFileName)
'Dim im As Image
'Dim Rec As Rectangle
'bmp.p
'Rec = New Rectangle(10, 10, bmp.Width, bmp.Height)
'im.
'PictureBox1.Image = bmps
End Sub
Protected Overrides Sub OnDragEnter(ByVal e As DragEventArgs)
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
Dim allow As Boolean = True
Dim s As String
For Each s In CType(e.Data.GetData(DataFormats.FileDrop), String())
Dim ext As String = Path.GetExtension(s).ToLower()
If Not (ext = ".jpg" OrElse ext = ".jpeg" OrElse ext = ".tif" OrElse ext = ".gif" OrElse ext = ".bmp") Then
allow = False
End If
Next s
If allow Then
e.Effect = DragDropEffects.Copy
Else
e.Effect = DragDropEffects.None
End If
End If
End Sub 'OnDragEnter
Private Sub MenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem5.Click
Application.Exit()
End Sub
Private Sub tb_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles tb.ButtonClick
Dim index As Integer
index = e.Button.ImageIndex
Select Case index
Case 0
i = 1
count = 1
Case 1
Case 2
Case 3
Try
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Working Code using multiple picture boxes
Dim xSize, ySize As Integer
xSize = Anim.AnimWidth
ySize = Anim.AnimHeight
Dim sz As New Size(xSize, ySize)
Dim AnimFrame As Bitmap = Anim.Frame(FrameCount)
Dim pos As Point
ReDim Preserve PictureBox(FrameCount)
pos = New Point(xPos, yPos)
PictureBox(FrameCount) = New PictureBox
PictureBox(FrameCount).Size = sz
PictureBox(FrameCount).Location = pos
PictureBox(FrameCount).BackColor = Color.Blue
Me.Controls.Add(PictureBox(FrameCount))
PictureBox1.Controls.Add(PictureBox(FrameCount))
PictureBox(FrameCount).Image = AnimFrame
FrameCount = FrameCount + 1
xPos = xPos + xSize
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Dim AnimFrame As Bitmap = Anim.Frame(FrameCount)
'PictureBox1.Image = AnimFrame
'FrameCount = FrameCount + 1
'Anim.NextFrame()
'Dim AnimFrame2 As Bitmap = Anim.Frame(FrameCount)
'PictureBox1.Image = AnimFrame
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Select
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'vPicBox.AllowDrop = True
End Sub
'Private Sub oPicBox_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs)
'If Not vPicBox.Image Is Nothing Then
'm_MouseDown = True
'End If
'End Sub
'Private Sub oPicBox_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs)
'If m_MouseDown Then
'vPicBox.DoDragDrop(oPicBox.Image, DragDropEffects.Copy Or DragDropEffects.Move)
'Else
'm_MouseDown = False
'End If
'End Sub
'Private Sub vPicBox_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs)
'If e.Data.GetDataPresent(DataFormats.Bitmap) Then
'If e.KeyState = 9 Then
'e.Effect = DragDropEffects.Copy
'Else
'e.Effect = DragDropEffects.Move
'End If
'Else
'e.Effect = DragDropEffects.None
'End If
'End Sub
'Private Sub vPicBox_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs)
'vPicBox.Image = e.Data.GetData(DataFormats.Bitmap)
'If Not e.KeyState = 8 Then
'oPicBox.Image = Nothing
'End If
'End Sub
Private Sub MenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem8.Click
Dim oFileOpen As New OpenFileDialog
Dim i As Integer = 1
oFileOpen.Filter = "Animation|*.gif"
'oFileOpen.Filter = "All Files(*.*)|*.*|Bitmap(*.bmp)|*.bmp|Gif(*.gif)|*.gif|Jpeg(*.jpg)|*.jpg||PNG Files(*.png)|*.png"
oFileOpen.ShowDialog()
strFileName = oFileOpen.FileName
If strFileName = Nothing Then Exit Sub
Anim = New Animation(strFileName)
End Sub
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
End Sub
Private Sub MenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem4.Click
Dim oSaveFile As New SaveFileDialog
oSaveFile.Filter = "Bitmap|*.bmp"
oSaveFile.ShowDialog()
Dim strSaveName As String = oSaveFile.FileName.ToLower
'Dim myBitmap As Bitmap = PictureBox().image
Dim bmp As Bitmap
Dim im As Image
'Dim myBitmap As Bitmap = PictureBox1.Image
'myBitmap.Save(strSaveName, ImageFormat.Bmp)
End Sub
End Class
|
|
|
|
|
So you want to save each idividual frame as it's own .BMP or .JPG file?
Then just iterate through the PictureBox's, just like you added to the Form (or parent PictureBox in your case), cast a Bitmap object to the Image property of the PictureBox, then supply the filename to save it. You already have most of the code written, the rest is easy.
For x = 0 to UBound(PictureBox(), 0)
Dim imgBitmap As Bitmap = PictureBox(x).Image
imgBitmap.Save(strFilename, ImageFormat.Bmp)
'increment your filename somehow, somthing like
'MyAnimation0001.bmp, MyAnimation0002.bmp, ...
imgBitmap.Dispose()
Next
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
I can already save each individual frame as a seperate bitmap.What I want to do is save all the animation frames as a single bitmap file.So when I open up that single bitmap file in Microsoft Paint or Paintshop Pro it displays all the frames of the animation in a single bitmap file.
|
|
|
|
|
For that, you would have to make a bitmap and loop through the frames. Then, draw the current frame on to your bitmap at the ending position of the previous frame.
Aaron Eldreth
TheCollective4.com
My Articles
While much is too strange to be believed,
Nothing is too strange to have happened.
- T. Hardy
|
|
|
|
|
Yes thats what i want to do, but i don't know how to do it. Can someone help me with that please.
|
|
|
|
|
1st question
how could i move the form by the mouse ofcourse not from the title bar
or how could i make a label and by mouse down i can move the form and when up the mouse it leave the form at the new place
2nd
now i make a game and i want to make to things
first a shortcut key when i press it start a new game
like if press f2 start a new game how?
second in new game have i to clear changes i made one bye one or there is a code to load the form as it loaded in the first time
3rd
i knew how to make a control array of a control like a control array of commands when u clicked one the tabindex is ur guide and i make a notehr one how can i bound the two control arrays
Lost & Forgotten
|
|
|
|
|
ahmad_yossef wrote:
1st question
how could i move the form by the mouse ofcourse not from the title bar
or how could i make a label and by mouse down i can move the form and when up the mouse it leave the form at the new place
You would have to experiment with overriding the MouseDown and MouseUp events of the Form. During MouseDown, you would probably have to use the PointToScreen function to calculate the coordinates to use and change the Top and Left parameters of the Form to those coordinates. No, I don't have any sample code.
ahmad_yossef wrote:
2nd
now i make a game and i want to make to things
first a shortcut key when i press it start a new game
like if press f2 start a new game how?
second in new game have i to clear changes i made one bye one or there is a code to load the form as it loaded in the first time
This depends entirely on your game's engine design and can only be answered by you, the person who designed it. The key would be handled just like any other keydown/keyup event in your game. How you reset your game engine depends HEAVILY on the design of the engine.
ahmad_yossef wrote:
3rd
i knew how to make a control array of a control like a control array of commands when u clicked one the tabindex is ur guide and i make a notehr one how can i bound the two control arrays
This makes no sense what-so-ever...
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
I have a custom collection set that contain specific items and/or a set of items of that same class. (Much like a Windows folder, any collection can contain one or more "shortcut" items, as well as other "folder" items - which in turn can contain the same kind of items).
I have the class collections and representations mapped out, but I am having a heck of a time implementing XML Serialization/Deserialization around the set.
There is a very helpful article on XML ser/deser of a custom collection class, but it is not recursive.
Can someone point me to an appropriate document?
Thanks;
MR
|
|
|
|
|
I created a Class library in a multi-project solution. This library is being referenced by many other libraries in different projects in the same solution. When I compile this library I would manually remove references to this library and then reference it again. Is there another way to do this?
|
|
|
|
|
Hi,
Another way of doing this is use the Reflection Class,which dynamically
Loads the Assembly at run time. and also Unloads the Assembly.
So, you use the Assembly when ever you want at Runtime.
Regards,
Sukesh.
Sukesh.g
|
|
|
|
|
The problem is probably because you are using automatic versioning in your Class library project. Open the Assembly.vb file and change the Assembly Version attribute from "1.*.*" (auto-increment versioning) to "1.0.0.0" or whatever you want for a version number. Then, all your other projects that reference this assembly will reference the same version of the assembly.
In other words, your projects are referencing your Class assembly. When that reference is created, is it created with the version number of the last time you compiled the Class into an assembly. The '*'s in the Assembly version attribute of your Class project denote numbers where the compiler will automatically increment the version number. When your other projects that reference this assembly are run, they load the Class assembly with the same version that was used when the reference was created. If your app references your Class with the Class's version at 1.0.2039, then the app will always expect version 1.0.2039 to be there.
Now, if you set a reference to the Class assembly, you'll run into the problem that your having now. If you create the reference to the Class project, the versioning problem will go away, but you'll still have to change the Assembly version of your Class project to a static number. Otherwise, when you compile your Class assembly, you'll have to recompile all the projects that reference it to.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Thanks. I finally got it.
|
|
|
|
|
Hello,
I'm very new to VB so maybe the solution I'm looking for is easy to find but I just can't find it...
I have an access database with companies datas; this database is read by a VB application ( prev, next, search...usual stuff ).
The fields are:
Company
Address
City
Phone
Fax
Email
Comments
What I would like to add is:
a combo box which will autoupdate itself based on the database records, so when a user is selecting an item from the combo, the corresponding record become visible on the interface fields.
It is possible to have something like this? I did the thing in Access but it looks like there are many differences between VB code and Access code...
Thanks in advance.
Axel
|
|
|
|
|
Access code is VB code, just more limited. Visual Basic for Applications (VBA) is a subset of the full language. When coding Access apps quite a lot goes on 'behind the scenes' that you can't easily see. When manipulating a db with VB directly, you have to provide that functionality yourself. If I understand your question correctly, you are trying to populate a form with data that depends on a user selection from a combo box. You need to provide a function that intercepts the user selection event and executes a SELECT query on the database, then update the form controls with the resulting recordset.
"My kid was Inmate of the Month at Adobe Mountain Juvenile Corrections Center" - Bumper Sticker in Bullhead City
|
|
|
|
|
Thanks a lot, Roger. I got the idea.
|
|
|
|
|
Can anyone point me to a class for creating an Application Task Bar in vb.net? I have a CS class, but it is incomplete and I am not having much luck repurposing it.
Either source code, or even a control that I can purchase that would allow me to dock a bar to the screen, hide it, etc.
Thanks;
M. Rich
|
|
|
|
|
Have a look at this:
John O'Byrne's
taskbarnotifier, a skinnable MSN Messenger-like popup in C# and now in VB.NET too
http://www.codeproject.com/cs/miscctrl/taskbarnotifier.asp
|
|
|
|
|