Subject |
Author |
Date |
|
Bandar Alfatta
|
Feb 20, 2011 - 2:15 PM
|
Hi, Very nice tools but i have some issue about Memory i think it’s to large and i see increase memory every time i change the themas (I use your demo).
We are really interested to your product but want clarification on this issue
Thanks
|
|
Technical Support
|
Feb 21, 2011 - 6:33 AM
|
We checked the sample Gen2 heap size while changing the visual themes with the Performance Monitor, and it shows that the unused memory gets collected OK. Here is the screenshot:

|
|
Sublight Developer
|
Feb 16, 2011 - 2:28 PM
|
Since I upgraded Elegant Ribbon from version 3.8 to 4.0 my application frequently crashes with Stack Overflow exception (unfortunately stack trace of this exception is not available in this case). Exception happens randomly after few hours of application usage. Did you change something drastically in version 4.0?
|
|
Sublight Developer
|
Feb 22, 2011 - 11:49 AM
|
Here is simple example how you can reproduce problem: using System;
using System.Windows.Forms;
namespace ElegantRibbonTest
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
protected override void OnShown(EventArgs e)
{
base.OnShown(e);
System.Windows.Forms.TextBox winFormsTextBox = new TextBox();
winFormsTextBox.Text = "Test";
winFormsTextBox.Width = 100;
Controls.Add(winFormsTextBox);
Controls.Remove(winFormsTextBox);
winFormsTextBox.Dispose(); //successfully disposed
Elegant.Ui.TextBox textBox = new Elegant.Ui.TextBox();
textBox.Text = "Test";
textBox.Width = 100;
Controls.Add(textBox);
Controls.Remove(textBox);
textBox.Dispose(); //System.StackOverflowException exception
}
}
}
|
|
Sublight Developer
|
Feb 16, 2011 - 2:52 PM
|
I think it has something to do with dynamic Elegant Ribbon controls creation (Elegant.Ui.TextBox and Elegant.Ui.Button) and Dispose() call...
|
|
Technical Support
|
Feb 23, 2011 - 2:34 AM
|
Thank you for the bug report. We have fixed it and will send you the updated assemblies soon.
|
|
Sublight Developer
|
Feb 16, 2011 - 10:23 AM
|
|
|
Sublight Developer
|
Mar 15, 2011 - 11:35 AM
|
I installed new Elegant Ribbon 4.1 and used new property QuickAccessToolbarDropDownVisible. It looks like that setting this property does not have any effect. I am using 64 bit Windows 7 and Elegant Ribbon Office 2010 (silver) theme.
|
|
Technical Support
|
Mar 16, 2011 - 12:52 AM
|
|
|
Technical Support
|
Feb 26, 2011 - 6:53 AM
|
The functionality will be available in version 4.1. Thank you.
|
|
Tom Faris
|
Feb 14, 2011 - 3:16 PM
|
Hi,
I am wondering if there is a way to use the SplitButton control on the Application Menu? An example of such an application would be Excel 2007, where many of the options (Save As, Print, etc...) show a popup with multiple options (Save as workbook, save as macro-enabled workbook,...), but the user can also simply click the Save As button to get a default behavior.
DropDown is close but does not have a button section. Through some testing I’ve been able to get an actual SplitButton onto an application menu, but it skins as it would normally instead of in the context of the menu.
Thanks.
|
|
Technical Support
|
Feb 16, 2011 - 6:08 AM
|
We are sorry but SplitButton is not currently supported by the menu. We will probably add this feature in one of our next releases.
|
|
JACQUEMIN Fabrice
|
Feb 12, 2011 - 1:07 PM
|
Hello, I find that a control ListBox is missing and that he(it) would be the timely in one future version
Fabrice (France)
|
|
Technical Support
|
Feb 16, 2011 - 6:01 AM
|
Thank you for the suggestion.
|
|
patrick fritzsch
|
Feb 9, 2011 - 12:05 PM
|
Hello, I can set several styles of the ApplicationButton of the ribbon with the ApplicationButtonStyle Property. Actually i would need a button which looks quite greyish-white, where i dont find an appropriate style in the RibbonApplicationButtonStyle enum. Is there a way, how i can skin the button in the way i want to have it? I use currently Elegant UI 3.7 source edition. Thank you very much for your time.
|
|
Technical Support
|
Feb 16, 2011 - 6:07 AM
|
We send an email to your address.
|
|
Technical Support
|
Feb 10, 2011 - 3:19 AM
|
The feature is no supported. But since you have the source code we can tell how you can modify the source code. Please let is know if this is suitable for you.
|
|
patrick fritzsch
|
Feb 10, 2011 - 3:38 AM
|
That’s absolute suitable for me.
|
|
Roberto PƔrraga
|
Feb 8, 2011 - 9:33 PM
|
Please, indicate how to add controls like Text Box, Combo Box in the new Navigation Bar Control. Roberto
|
|
Technical Support
|
Feb 9, 2011 - 2:12 AM
|
Please use a panel as a navigation bar group content control with a text box and combo box inside. It means that you need to add a new empty group (without items container) to a navigation bar (by clicking a link at the bottom of the properties pane), then on your form create a panel with text box and combo box (or whatever you want) inside, and then select the created panel as a ContentControl property value for the navigation bar group. This is illustrated in the Navigation Bar sample on the Overview page, in the Data Input Control group. If you still have some questions, please tell us, so we will create a small sample project and send it to you.
|
|
Roberto PƔrraga
|
Feb 8, 2011 - 9:26 PM
|
Hi, would be very useful in a future release of Elegant Ribbon have a control panel DckingPane properties such as Visual Studio. Roberto
|
|
Technical Support
|
Feb 9, 2011 - 4:33 AM
|
Thank you for your suggestion. We will consider adding these features in one of next releases.
|
|
patrick fritzsch
|
Feb 8, 2011 - 6:18 AM
|
II use a gallery inside a ribbon. How can i retrieve a right click on a gallery item and display my own right click popup dialog and not the "Show quick Access - Minimize Ribbon" popup dialog? i use currently Elegant Ribbon 3.7 source edition.
|
|
Technical Support
|
Feb 9, 2011 - 4:32 AM
|
This functionality is not supported. However, we’ve prepared a code snippet that illustrates the way to extend a standard context menu for a Gallery in the Ribbon control. Form1() // Form1 constructor
{
Elegant.Ui.Button b1 = new Elegant.Ui.Button();
b1.Text = "button1";
Elegant.Ui.Button b2 = new Elegant.Ui.Button();
b2.Text = "button2";
Elegant.Ui.Button b3 = new Elegant.Ui.Button();
b3.Text = "button3";
Elegant.Ui.Button b4 = new Elegant.Ui.Button();
b4.Text = "button4";
Elegant.Ui.Button b5 = new Elegant.Ui.Button();
b5.Text = "button5";
Elegant.Ui.ContextMenu cm = new Elegant.Ui.ContextMenu();
cm.BeginInit();
cm.Items.AddRange(
new System.Windows.Forms.Control[]
{
b1, b2, b3, b4, new Elegant.Ui.Separator(), b5
});
cm.EndInit();
gallery1.ContextPopupMenu = cm;
Elegant.Ui.ContextMenu.RegisterControlContextMenu(gallery1.Popup.Child, cm);
cm.Showing += new EventHandler(cm_Showing);
}
void cm_Showing(object sender, EventArgs e)
{
currentGalleryItem = null;
Elegant.Ui.Control control = Elegant.Ui.Control.FromPoint(System.Windows.Forms.Cursor.Position) as Control;
if (control == null)
return;
FieldInfo fieldInfo = control.GetType().GetField("GalleryItem", BindingFlags.Instance | BindingFlags.Public);
if (fieldInfo == null)
return;
currentGalleryItem = fieldInfo.GetValue(control);
}
private object currentGalleryItem; // this field will store the gallery item for which context menu is currently shown. You should use the currentGalleryItem field value to determine the current gallery item associated with the context menu.
|
|
patrick fritzsch
|
Feb 9, 2011 - 11:57 AM
|
Thank you, this is working.
|
|
Paddy
|
Jan 29, 2011 - 11:04 PM
|
Hi,
I am using v3.7 of Elegant Ribbon and v3.8 of Grid.
I have a form that has an Elegant Panel on it. Within the Elegant Panel, I have a TableLayoutPanel with three rows and one column. In the first row, I have an Elegant Label and nothing in the second row, I have an unbound grid in the third row. I made the TableLayoutPanel BackColor the same color as the Panel ForeColor using the following code:
’Make the TableLayoutPanel BackColor the same color as the Panel ForeColor.
Dim ElegantControlSkin As Elegant.Ui.ControlSkin = Nothing
Dim PanelForeColor As Color = Color.Empty
If Elegant.Ui.SkinManager.TryGetSkin("Panel", ElegantControlSkin) Then PanelForeColor = ElegantControlSkin.GetPaintInformation(Elegant.Ui.ControlState.Normal).ForegroundColor
End If
tblLayoutPanel.BackColor = PanelForeColor
When I launch the form, it looks like the following. Any ideas?
dl.dropbox.com/u/5335929/screen.png
Thanks.
|
|
Technical Support
|
Jan 31, 2011 - 3:08 AM
|
It seems that you set the TableLayoutPanel background color to Color.Empty. You should inherit from TableLayoutPanel as follows: public class MyTableLayoutPanel : TableLayoutPanel
{
public MyTableLayoutPanel()
{
SetStyle(ControlStyles.SupportsTransparentBackColor, true);
}
}
|
|
Technical Support
|
Jan 31, 2011 - 3:11 AM
|
Then you need to set the MyTableLayoutPanel.BackColor property to Color.Transparent. This should solve the problem.
|
|
Roberto PƔrraga
|
Jan 29, 2011 - 9:34 AM
|
Hi, I installed version 4.0 of Elegant Ribbon, previously used version 3.8. The installation is successful, but by working with a program that includes components version 3.8 I generated the following errors: Unable to load the specified file ’Elegant.Ui.Common, Version=3.8.0.0, Culture neutral’.
and if I try to create a new application I generate the error: Unload the file ’Elegant.Ui.Common, Version=3.8.0.0, Culture neutral’.
Working with Visual Studio 2008 and 2010 Professional. Roberto
|
|
Technical Support
|
Jan 29, 2011 - 9:53 AM
|
Hi Roberto,
You should use either version 3.8 or 4.0 in your application. After you installed v.4.0, version 3.8 was uninstalled. Because your application still refers to v.3.8, you get that error. There are several approaches to resolve what you encountered:
1) Remove a reference to 3.8 and add a reference to 4.0. 2) Uninstall v.4.0, install v.3.8, and use v.3.8. You can also save the assemblies from this version somewhere so that when you uninstall v.3.8, you can still access them. 3) If you did not have a strong reference ( āElegant.Ui.Common, Culture neutralā instead of āElegant.Ui.Common, Version=3.8.0.0, Culture neutralā), your application would use v.4.0 automatically.
|
|
Roberto PƔrraga
|
Jan 29, 2011 - 9:37 AM
|
Despite loading assemblies manually Elegant Ribbon 4.0 References in the My Application button, descitos errors are generated above. Roberto.
|
|
Jonathan Finger
|
Feb 3, 2011 - 12:57 PM
|
I ran into this problem previously when upgrading from 3.7 to 3.8. My references upgraded automatically but the toolbox controls do not. You need to rightclick on the toolbox in visual studio and click choose items. Under the .net framework components you will see all the elegant ribbon controls (I suggest sorting by assembly name or namespace). You need to unselect all the 3.8 version and select all the 4.0 versions. Jonathan
|
|
Paddy
|
Jan 18, 2011 - 8:56 PM
|
I am working with v3.7 of the Ribbon. I have added RibbonGroups to the Ribbon. I have then reorganized where I want these RibbonGroups to be. However, when I load the application, the order in design-time isn’t the same as the order in run-time. Any ideas? Thanks.
|
|
Technical Support
|
Jan 19, 2011 - 2:53 AM
|
It sounds really strange and hardly possible. Please provide us with a project illustrating the issue.
|
|
Paddy
|
Jan 19, 2011 - 12:38 PM
|
OK. I rebooted my machine, reopened Microsoft Visual Studio Professional 2005, made the changes to the order, the asterisk that usually comes up in the tab of the code pane now appeared. It didn’t do that before. I was now able to save the changes and it stuck this time. Before, the asterisk wasn’t coming up. Self-resolved.
|
|
Paddy
|
Jan 12, 2011 - 10:39 PM
|
Hi,
I have a DateTimePicker on my form and would like to add seven days to the value.
Usually, you would do: DateTimePicker1.Value = DateTimePicker1.Value.AddDays(7) However, when I get to .Value, .AddDays isn’t an available option. How do I goabout adding days to the default value?
Thanks!
|
|
Technical Support
|
Jan 13, 2011 - 4:56 AM
|
The DateTimePicker.Value property is a nullable value, so you should use it like as follows: if (DateTimePicker1.Value.HasValue)
{
DateTimePicker1.Value = DateTimePicker1.Value.Value.AddDays(7);
}
else
{
DateTimePicker1.Value = DateTime.Now;
}
|
|
Paddy
|
Jan 13, 2011 - 9:19 AM
|
|
|
Paddy
|
Jan 10, 2011 - 5:13 AM
|
Hi,
I have many ComboBoxes on the form. All are Editable = False except for two. I have specified this within the properties window; however, when I go to run the form in run-time... The ones that should be editable aren’t. Any suggestions? Thanks.
|
|
Technical Support
|
Jan 10, 2011 - 10:23 AM
|
Please make sure that the ComboBox control on the second form has been bound to the data source at the moment you are trying to change its SelectedItem property.
|
|
Paddy
|
Jan 18, 2011 - 10:40 AM
|
I have been trying to get this work for weeks now and it still won’t default on the second form!!!!
|
|
Paddy
|
Jan 18, 2011 - 10:51 AM
|
I have tried everything I can think of and it’s not working. If I can’t get a simple thing to work then I am trashing that form altogether! This is the code I am using to populate the form and then I am trying to get the defaulting done from the SAME code. It isn’t doing anything! <CLSCompliant(True)> Public Sub PopulateDropDownListFromDB(ByVal cboName As Elegant.Ui.ComboBox, _ ByVal TableName As String, ByVal ColumnName As String, _ ByVal UseAutoComplete As Boolean, _ ByVal UseSQLDistinct As Boolean) Using SetDatabaseConnection As New SqlConnection(GetDatabaseConnectionString) ’Specify an SQL query. Dim sSQL As String = Nothing If UseSQLDistinct Then ’NOTES: frmReportSelection has some dupes from the DB, use DISTINCT in the SQL. sSQL = "SELECT DISTINCT " & ColumnName & " FROM " & TableName Else sSQL = "SELECT " & ColumnName & " FROM " & TableName End If ’Assign the SQL query and database connection to the DataAdapter. Dim MyDataAdapter As New SqlDataAdapter(sSQL, SetDatabaseConnection) ’Create a new instance of a DataSet. Dim MyDataSet As New DataSet MyDataSet.Locale = CurrentCulture Try ’Clear the DataSet of any previously obtained database information. MyDataSet.Clear() ’Refill the DataAdapter with new information obtained from the database. MyDataAdapter.Fill(MyDataSet, TableName) With cboName ’First check to see if any records. If no records, add a default item. Dim MyDataTable As DataTable = New DataTable MyDataTable.Locale = CurrentCulture MyDataTable = MyDataSet.Tables(TableName) ’Fill the ComboBox. ’Assign the database table to the DataSource property. .DataSource = MyDataSet.Tables(TableName) ’Assign the database column name to the DisplayMember and ValueMember properties. .DisplayMember = ColumnName .ValueMember = ColumnName If UseAutoComplete = True Then .AutoCompleteMode = AutoCompleteMode.SuggestAppend .AutoCompleteSource = AutoCompleteSource.ListItems End If ’Take the value from cboPartnerName on frmWorkLogEntryStart and default it on frmWorkLogEntry. If .Name Is "cboPartnername" Then With frmWorkLogEntryStart frmWorkLogEntry.cboPartnerName.SelectedItem = .cboPartnerName.Items(.cboPartnerName.FindStringExact(.cboPartnerName.Text, 0)) End With End If If MyDataTable.Rows.Count > 0 Then ’Has records. If .Editable = False _ And UseAutoComplete = False Then ’Specify a default selection in the ComboBox. .SelectedIndex = 0 End If Else .DataSource = Nothing .Items.Add("[Please Add An Item]") .SelectedIndex = 0 End If End With Catch ex As SqlException ’Show the end user a message if an error is generated. MessageBox.Show("There was an error retrieving data from table name " & TableName & " for the column " & ColumnName & "." & vbNewLine & vbNewLine & _ "We are going to prepopulate the dropdown menu with a default value; therefore, you can disregard the error." & vbNewLine & vbNewLine & _ "We highly suggest that you click on the plus sign next to the dropdown menu to add some options of your own." & vbNewLine & vbNewLine & _ "The reason why you got this error in the first place is:" & vbNewLine & _ "No data items in the database " & TableName & " to pull." & vbNewLine & vbNewLine & _ "The exception error is:" & vbNewLine & _ ex.Message, _ "Database Information Retrieval Issues.", _ MessageBoxButtons.OK, _ MessageBoxIcon.Error, _ MessageBoxDefaultButton.Button1, _ MessageBoxOptions.DefaultDesktopOnly, _ False) ’If no rows are returned to populate the ComboBox, this will return an error, prepopulate with [Please Add An Item] With cboName .DataSource = Nothing .Items.Add("[Please Add An Item]") .SelectedIndex = 0 End With End Try End Using ’SetDatabaseConnection. End Sub
|
|
Paddy
|
Jan 18, 2011 - 11:12 AM
|
I even tried the following and no change. Doesn’t make any sense!
If MyDataTable.Rows.Count > 0 Then ’Has records. If .Editable = False _ And UseAutoComplete = False Then ’Specify a default selection in the ComboBox. .SelectedIndex = 0 ElseIf bNewCallSingle Then If .Editable = False _ And UseAutoComplete = False Then If .Name = "cboPartnerName" Then ’Take the selected value from frmWorkLogEntryStart and make it default on frmWorkLogEntry. With frmWorkLogEntryStart frmWorkLogEntry.cboPartnerName.SelectedItem = .cboPartnerName.Items(.cboPartnerName.FindStringExact(.cboPartnerName.Text, 0)) End With Else ’Specify a default selection in the ComboBox. .SelectedIndex = 0 End If End If End If Else .DataSource = Nothing .Items.Add("[Please Add An Item]") .SelectedIndex = 0 End If
|
|
Technical Support
|
Jan 19, 2011 - 2:52 AM
|
Could you send us a test project that illustrates the issue? We will check what’s wrong and send it back to you as soon as possible. That would allow us to help you more efficiently Thank you for understanding.
|
|
Technical Support
|
Jan 10, 2011 - 6:36 AM
|
It sounds really strange. We created a simple project and were unable to reproduce the issue. Please send us a test project so we can check it on our site.
|
|
Paddy
|
Jan 10, 2011 - 8:50 AM
|
OK, I went through my code just incase I had missed something and this is what I found. The two ComboBoxes called cboClientName and cboDispatcherOrConsultantName are not bound to any datasource. They are going to be but not yet. However, they also show a default value of [Please Add An Item] when it should be blank and editable. It looks like it could be this code but I thought I had allowed for that because I explicitly specified names of the controls not to touch but seems they are being touched anyway. I am going to have to play around with the code a little. My current code is: ElseIf TypeOf GrandChildControl Is Elegant.Ui.ComboBox Then ’Make sure the controls FontStyle within the GroupBox is regular FontStyle ’because it’ll automatically take on the FontStyle of its container control. ’The container control being the GroupBox. (FontStyle.Bold). With DirectCast(GrandChildControl, Elegant.Ui.ComboBox) ’If there is no error and there are no items in the list, add one. If .Items.Count = 0 Then Try If Not GrandChildControl.Name Is "cboDispatcherOrConsultantName" _ Or Not GrandChildControl.Name Is "cboClientName" Then .Items.Add("[Please Add An Item]") .SelectedIndex = 0 .Editable = False Else .Editable = True End If Catch ex As ArgumentException MessageBox.Show(ex.Message, _ "Argument Exception", _ MessageBoxButtons.OK, _ MessageBoxIcon.Error, _ MessageBoxDefaultButton.Button1, _ MessageBoxOptions.DefaultDesktopOnly, False) End Try End If
|
|
Paddy
|
Jan 10, 2011 - 8:56 AM
|
OK, I got that sorted. It was that code. I just switched it and only those two are editable whereas the others aren’t.
Code: With DirectCast(GrandChildControl, Elegant.Ui.ComboBox) ’If there is no error and there are no items in the list, add one. If .Items.Count = 0 Then Try If GrandChildControl.Name Is "cboDispatcherOrConsultantName" _ Or GrandChildControl.Name Is "cboClientName" Then .Editable = True Else .Items.Add("[Please Add An Item]") .SelectedIndex = 0 .Editable = False End If Catch ex As ArgumentException MessageBox.Show(ex.Message, _ "Argument Exception", _ MessageBoxButtons.OK, _ MessageBoxIcon.Error, _ MessageBoxDefaultButton.Button1, _ MessageBoxOptions.DefaultDesktopOnly, False) End Try End If .Font = New Font(.Font, FontStyle.Regular) ’Set a default width. .Size = New Size(ComboBoxTextBoxSize) End With
|
|
Technical Support
|
Jan 10, 2011 - 10:23 AM
|
We are glad that you’ve found the solution.
|
|
Paddy
|
Jan 10, 2011 - 9:25 AM
|
One last thing about ComboBoxes before I go. I have two ComboBoxes with the same name that reside on different forms. The name of the ComboBox is cboPartnerName. These ComboBoxes are bound to a database to pull information from it. I am able to get it working; however, when I get my initial screen, I select an item from it, click Start and then my next form comes up. I am looking to default the value selected on the previous screen in that ComboBox. I have tried the following and it isn’t changing the value. With frmWorkLogEntryStart
’TODO
’frmWorkLogEntryStart.cboPartnerName = frmWorkLogEntry.cboPartnerName
cboPartnerName.SelectedItem = .cboPartnerName.Items(.cboPartnerName.FindStringExact(.cboPartnerName.Text))
End With Any ideas on what might be going on? I can’t even select the SelectedIndex because it errors out with a NullException.
|
|
Ryan Montgomery
|
Jan 5, 2011 - 12:20 PM
|
Is it possible to apply animation or video (an animated GIF for example) in Elegant Ribbon’s floating Screen Tips?
|
|
Technical Support
|
Jan 6, 2011 - 10:20 AM
|
You cannot add a custom control to a screen tip at the moment. We consider adding this feature in the next release.
|
|
Imgen Wakin
|
Jan 3, 2011 - 8:27 PM
|
In my app, I need to change the background color the button, but it seems that the BackColor property doesn’t work for Elegant.Ui.Button. How should I do it. BTW, I’m using Elegnt Ribbon 3.5 My email address is : imgen@hotmail.com
|
|
Technical Support
|
Jan 5, 2011 - 7:17 AM
|
You should set the UseVisualThemeForBackground property to false in order to use the BackColor property.
|
|
Sublight Developer
|
Jan 2, 2011 - 7:56 AM
|
Is it possible to hide or disable "Customize Quick Access Toolbar" option? 
|
|
Sublight Developer
|
Feb 13, 2011 - 5:49 AM
|
I would just like to ask if this is already supported in version 4.0?
|
|
Technical Support
|
Jan 5, 2011 - 10:19 AM
|
We will add this feature in version 3.9.
|
|
Technical Support
|
Jan 5, 2011 - 7:14 AM
|
You can use the Ribbon.QuickAccessToolbarCustomizationEnabled property for this purpose.
|
|
Sublight Developer
|
Jan 5, 2011 - 9:38 AM
|
I already tried this but I can still click on button in titlebar which opens "Customize Quick Access Toolbar" popup menu. I would like to prevent user to open this popup menu (titlebar button for QAT would be hidden or grayed). Is this possible? I am using newest Elegant Ribbon library. 
|
|
Paddy
|
Jan 2, 2011 - 3:30 AM
|
Hi,
I am using PictureBoxes to hold certain images on the form. I have KeyTips assigned for these PictureBoxes. If I press the ALT key on the keyboard, the KeyTip is displayed. However, when I press the corresponding key on the keyboard for the KeyTip, nothing happens. If I click on the PictureBox, the relevant situation happens without an issue (eg, a form showing or a control being displayed that is set as hidden.)
Any ideas on how to fix this?
|
|
Technical Support
|
Jan 5, 2011 - 7:13 AM
|
Have you tried the KeyTipPressed event? You can handle this event the same way as you currently do with mouse click.
|
|
Paddy
|
Dec 29, 2010 - 3:47 AM
|
Hi,
I am using Ribbon v3.7.
I have a TabControl on the form with many TabPages, I am attempting to check which Tab is clicked on so that something can happen. I have the logic right, I think and I have used two methods but it doesn’t seem to be working. It’s not doing what I want it to do, it’s not doing anything at all.
Pretty much, I am wanting to automatically place the cursor in a particular Textbox depending on which Tab is clicked on. The methods I have tried are: TabIndexChanged and SelectedTabPageChanged I am currently using the TabIndexChanged method with the following code: Private Sub TabControl_UserSettings_TabIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControl_UserSettings.TabIndexChanged
With TabControl_UserSettings
Select Case .SelectedTabPage.TabIndex
Case 0 ’Applications
’Set intial focus
txtFireFoxDefaultLocation.Focus()
’Set tab index
SetApplicationsTabIndex()
Case 1 ’Computer Type
’Set intial focus
txtComputerType.Focus()
’Set tab index
SetComputerTypeTabIndex()
Case 2 ’Operating Systems
’TODO
Case 3 ’Operating System Type
’TODO
Case 4 ’Operating System Manufacturers
’TODO
Case 5 ’Referrer Type
’TODO
Case 6 ’Resolution Type
’TODO
Case 7 ’Service Packs
’TODO
Case 8 ’Website URLs
’Set initial focus
txtIRCChatURL.Focus()
’Set tab index
SetWebsiteURLsTabIndex()
End Select
End With
End Sub
|
|
Paddy
|
Dec 29, 2010 - 4:01 AM
|
Ok, after playing around, I have fixed it myself with the following code: Private Sub TabControl_UserSettings_SelectedTabPageChanged(ByVal sender As Object, ByVal e As Elegant.Ui.TabPageChangedEventArgs) Handles TabControl_UserSettings.SelectedTabPageChanged
’TODO:
’Focus not working
Select Case TabControl_UserSettings.SelectedTabPage.Text
Case "Applications"
’Set intial focus
txtFireFoxDefaultLocation.Focus()
’Set tab index
SetApplicationsTabIndex()
Case "Computer Type"
’Set intial focus
txtComputerType.Focus()
’Set tab index
SetComputerTypeTabIndex()
Case "Operating Systems"
’TODO
Case "Operating System Type"
’TODO
Case "Operating System Manufacturers"
’TODO
Case "Referrer Type"
’TODO
Case "Resolution Type"
’TODO
Case "Service Packs"
’TODO
Case "Website URLs"
’Set initial focus
txtIRCChatURL.Focus()
’Set tab index
SetWebsiteURLsTabIndex()
End Select
End Sub
|
|
Paddy
|
Dec 29, 2010 - 2:31 AM
|
Hi,
I am using Ribbon v3.7.
I am using the TabControl with many tabs. Each tab has different content. I am using the KeyTip property for the controls on the relevant TabPage to make it easier for the end user to navigate the form without the use of a mouse. This is the problem I am encountering.... when I am on ANY TabPage and I hit the ALT key on the keyboard to show the KeyTips for the controls, ALL KeyTips for the entire form display. I suppose I could set the KeyTip property when the TabPage tab is clicked on by the end user but would prefer not to do that if at all possible. Any idea of what is going on?
The screen shot of the form is here: dl.dropbox.com/u/5335929/ScreenShotKeyTip.png Thanks!
|
|
Technical Support
|
Dec 29, 2010 - 6:20 AM
|
You should also assign keytips for tab pages in this way: tabPage1.KeyTip = "A" This should resolve the issue.
|
|
Paddy
|
Dec 29, 2010 - 4:57 PM
|
Yes, it fixed the issue. Thanks.
|