|
web
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
How can I get the following functionatilty in Windows Forms ?I have a useful framework, written in a different language (PowerBuilder),
which I'd like to replicate in .Net and Forms, but I'm unsure of how to approach it, as the Event model is being used different between the development environments. Currently we have data entry screens, whose columns have been "wired" into a class that performs checks on the entered data. As the user "leaves" a column, the specific check / business rule is carried out. A lot of the checks are common across all the screens and linking the column to the specific method to be called is as easy a giving the column the appropriate Name. How can I create my own framework which would allow an easy method of connecting / wiring the columns and the method checks together. I was planning on using DataGrids, but can change that if I need to. Hi Al,
I am not sure how complex your business rules are but you can use a datagrid. Build a Class that overrides methods of the DataGridTextBoxColumn Example below was a test to see what I could do and needs to be built into a more generic class where the style is passed to it as a parameter but it makes the column readonly depending on the value in another column as well as converting the displayed data into upper case. I am not an expert and find this stuff fiddly and time consuming but it can be done. Public Class DacDGTextColLotNo Inherits DataGridTextBoxColumn Public Sub New() MyBase.New() Me.MappingName = MappingName Me.Format = Format Me.Alignment = Alignment Me.Width = Width Me.ReadOnly = [ReadOnly] Me.HeaderText = HeaderText Me.NullText = NullText End Sub Protected Overrides Function GetColumnValueAtRow _ (ByVal source As System.Windows.Forms.CurrencyManager, _ ByVal rowNum As Integer) As Object Dim s As Object Dim drv As DataRowView = CType([source].Current, DataRowView) s = MyBase.GetColumnValueAtRow([source], rowNum) If SetStyle = 1 Then s = UCase(s) 'Set to Read Only if Column "LotFlg" (Commodity Flag) <> 2 Dim fReadOnly As Boolean Try fReadOnly = drv("LotFlg").ToString <> "2" Catch fReadOnly = True End Try Me.ReadOnly = fReadOnly End If Return s End Function Protected Overrides Sub SetColumnValueAtRow( _ ByVal source As System.Windows.Forms.CurrencyManager, _ ByVal rowNum As Integer, ByVal value As Object) Value = UCase(value) MyBase.SetColumnValueAtRow([source], rowNum, NValue) End Sub End Class Show quoteHide quote "Al" <A*@discussions.microsoft.com> wrote in message news:2806E9BC-ABAD-4551-B841-CF353A0BE70B@microsoft.com... > I have a useful framework, written in a different language (PowerBuilder), > which I'd like to replicate in .Net and Forms, but I'm unsure of how to > approach it, as the Event model is being used different between the > development environments. > > Currently we have data entry screens, whose columns have been "wired" into a > class that performs checks on the entered data. As the user "leaves" a > column, the specific check / business rule is carried out. A lot of the > checks are common across all the screens and linking the column to the > specific method to be called is as easy a giving the column the appropriate > Name. > > How can I create my own framework which would allow an easy method of > connecting / wiring the columns and the method checks together. I was > planning on using DataGrids, but can change that if I need to. Al,
In my opinion is for that the validate event from every control. As I understand your problem well, just by instancing it from a class and let it go. (typed in this message, watch typos) \\\ Rules myRules = new Rules(); string ruleResult = myRules.MaxAmount((double) textBox1.text); /// \\\ dim myRules as New Rules dim ruleResult as String = myRules.MaxAmount(CDbl(textBox1.text)) /// I hope this helps, Cor
Hashtable question
Simple LookupAccountName (working) guidelines for developing an application How do you protect from pirating? copying data from MS-SQL to MS-Access using VB.Net Object variable or With block variable not set. SQL Error Anyone know what could cause the following error messages? Print information when ANY control is used Avoiding late binding |
|||||||||||||||||||||||