|
Rhyde Marsh wrote: not sure what you mean swallow, I'm expecting a try-catch in that method that hides the exception that is thrown.
Rhyde Marsh wrote: the data is updated but there seems to be a problem when it returns to the UI Is the data updated beyond the 350-char mark? How do you know there's a problem? Do you have an exception and a stack-trace?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
yes it updates but then i get a nullrefference exception. so before the 350 mark it updates and refresh fine but anything after that i get the error
|
|
|
|
|
Rhyde Marsh wrote: nullrefference exception I assumed that was fixed, based on your previous post.
Can you post the entire stacktrace from the exception?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
no my problem was not solved, but i it seem to be on bug on microsoft side in the control
s at System.Windows.Forms.DataGridView.ComputeVisibleColumns()
at System.Windows.Forms.DataGridView.LayoutScrollBars()
at System.Windows.Forms.DataGridView.ComputeLayout()
at System.Windows.Forms.DataGridView.PerformLayoutPrivate(Boolean useRowShortcut, Boolean computeVisibleRows, Boolean invalidInAdjustFillingColumns, Boolean repositionEditingControl)
at System.Windows.Forms.DataGridView.ResetUIState(Boolean useRowShortcut, Boolean computeVisibleRows)
at System.Windows.Forms.DataGridViewRowCollection.OnCollectionChanged_PreNotification(CollectionChangeAction cca, Int32 rowIndex, Int32 rowCount, DataGridViewRow& dataGridViewRow, Boolean changeIsInsertion)
at System.Windows.Forms.DataGridViewRowCollection.OnCollectionChanged(CollectionChangeEventArgs e, Int32 rowIndex, Int32 rowCount, Boolean changeIsDeletion, Boolean changeIsInsertion, Boolean recreateNewRow, Point newCurrentCell)
at System.Windows.Forms.DataGridViewRowCollection.ClearInternal(Boolean recreateNewRow)
at System.Windows.Forms.DataGridView.RefreshRows(Boolean scrollIntoView)
at System.Windows.Forms.DataGridView.DataGridViewDataConnection.ProcessListChanged(ListChangedEventArgs e)
at System.Windows.Forms.DataGridView.DataGridViewDataConnection.currencyManager_ListChanged(Object sender, ListChangedEventArgs e)
at System.Windows.Forms.CurrencyManager.OnListChanged(ListChangedEventArgs e)
at System.Windows.Forms.CurrencyManager.List_ListChanged(Object sender, ListChangedEventArgs e)
at System.Data.DataView.OnListChanged(ListChangedEventArgs e)
at System.Data.Listeners`1.Notify[T1,T2,T3](T1 arg1, T2 arg2, T3 arg3, Action`4 action)
at System.Data.Index.OnListChanged(ListChangedEventArgs e)
at System.Data.DataTable.ResetInternalIndexes(DataColumn column)
at System.Data.DataTable.Clear(Boolean clearAll)
at MCAP.MaintenanceDataSetTableAdapters.WebsitePageDownloadTableAdapter.FillByWhereClause(WebsitePageDownloadDataTable dataTable, String whereClause) in C:\Users\mmarshall.MTMOBAY\Desktop\Mark\MCAP\DataSet\MaintenanceDataSet.Designer.vb:line 35940
at MCAP.UI.Processors.Maintenance.LoadFilteredWebsite(String filterCondition) in C:\Users\mmarshall.MTMOBAY\Desktop\Mark\MCAP\UIProcess\Maintenance.vb:line 6328
i found similar issue on microsoft site
https://social.msdn.microsoft.com/Forums/ro-RO/bdbd2524-a07a-4deb-bbd4-d937fdd691c4/systemnullreferenceexception-when-clicking-column-header?forum=winformsdatacontrols[^]
|
|
|
|
|
That could be tested easily by giving the columns a fixed width
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
yes, but cannot be limited because the length of the url entered is unknown
|
|
|
|
|
This is not helping much, we're talking about different things.
If you can fix the size of the column in the grid in where it is displayed to 100 pixels, then you can still enter long strings. It would prove whether or not the observed behaviour is caused by the internal resizing, or somewhere else.
If fixing the width helps, then you'll need to look for other alternatives or find a fix. If fixing the width does not help, then the error is occurring somewhere else.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
had to change the column to accomodate a popup wasnt getting anywhere with it
|
|
|
|
|
Hi everybody!
I hope I am posting this question on the correct forum but anyway, I'm having some difficulty getting a Legend on a Chart Control to behave in the way I would like it to.
I want the legend to be placed under the chart, and legend items for each series to be added to the legend in the order the series are added to the chart.
Say I have 6 series which are added to the chart in order: A, B, C, D, E, F.
Suppose that the chart area in which the legend is docked is such a size that the legend has 3 columns.
I want the legend to be filled like so:
A B C
D E F
i.e. columns first, then rows.
Frustratingly, this is not the behaviour I am getting.
As I add the first three series all is fine, and I get a legend with 3 columns and 1 row filled like so:
A B C
But when I add a 4th series, instead of getting:
A B C
D
as one might expect, the legend looks like this:
A C D
B
Then when I add the next series I get:
A C E
B D
And when I add the final series I get:
A C E
B D F
This is really frustrating me as I have trawled the internet and cannot find any mention of this issue, let alone an answer. Surely wanting the legend to be filled columns first, then rows, would be the most logical way of doing it, so I can't believe that the .NET guys haven't allowed for this possibility.
Anyway, my legend is set with the following properties:
Legend legend = new Legend("Legend1");
legend.LegendItemOrder = LegendItemOrder.ReversedSeriesOrder;
legend.Alignment = StringAlignment.Center;
legend.Docking = Docking.Bottom;
legend.LegendStyle = LegendStyle.Table;
legend.TableStyle = LegendTableStyle.Wide;
legend.IsEquallySpacedItems = true;
legend.AutoFitMinFontSize = 6;
legend.IsTextAutoFit = true;
chart.Legends.Add(legend);
Can anyone please help me?
Thanks, Nick
|
|
|
|
|
I'm sure you have searched plenty
http://stackoverflow.com/questions/1917798/ms-chart-control-change-the-order-of-series-in-a-legend[^]
I don't know the complexity of your chart, but I do know that the order in which you load the series to the chart is important, and what type of chart you select as well such as a series chart with plot lines.
I guess take a pie chart, now you have a legend to explain the pieces of the pie, there really is no order to it. Unless the largest pieces of the pie down to the smallest are the order.
I've always had to experiment for hours to get them right, and after 100's of them, narrow down which charts to stay away from.
I'm not sure if you can do multiple legends, and display them in rows or columns.
Not the answer you want, but your going have to take to pencil and paper and record your results based on what you get, or try the Microsoft Forum for Chart Control at asp.net
|
|
|
|
|
Hi all,
I am very new to windows form and facing a problem with infragistics numeric editor. I need to allow user to input the value max "100.00%" or below (like 45.78, 99.00, 99.99). I am setting following propety for this:
MaskDisplayMode =IncludeBoth
MastInput= {LOC}nn.nn%
MaxValue= 100
MinValue = 0
It allows user to input 100.99% but i need to restrict so that user cann't input more than 100.00
Help really appreciated.
Thanks,
Sri
modified 17-Sep-14 3:19am.
|
|
|
|
|
srinandan.. wrote: Help really appreciated. Ask the infragistics support team. It's not a generic control, not part of the framework.
srinandan.. wrote: It allows user to input 100.99% Sounds like a bug where one only checks the integer-part for the max, not the decimal.
You could easily do this without infragistics; there's quite some material out there on "validation".
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
New to VS C# and inherited a partially developed C# Winform project. Need some guidance.
Windows Form displays SQL results in a tree view with the intent of the user selecting item(s) from the list. You have to scroll the list and find item(s) you want to select.
Items have a # and a name and most users know one or the other.
Question: Is there a way to include a text box or something that would move the tree display to characters typed in the box? If yes how is it done in VS C#?
Anyone have a sample project I could download? Doesn't have to be SQL data, could be a windows directory or something.
|
|
|
|
|
|
Thanks but very few Winform samples in C# and none related to my question.
|
|
|
|
|
Are you saying you don't know how to handle text input, and use the content to change the focus of your TreeView?
|
|
|
|
|
Quote: Are you saying you don't know how to handle text input, and use the content to change the focus of your TreeView?
As a newbie I'm not sure what your response means. I want the display to scroll based on user input in a textbox rather than using the scrollbar and mouse. If that's what you mean by your response, than yes, I don't know how.
|
|
|
|
|
I am still not sure what you are getting at. A textbox is used for text input, and your program can capture that text as it is entered or when it is complete. It then makes use of that text in whatever way necessary. Scrolling of a view is a separate issue and would require some code to be written to move a certain tree item to the top of the form (or area of the form). The suggestion at http://stackoverflow.com/questions/457932/c-sharp-how-do-i-scroll-selected-treeview-node-into-view[^] should help you to figure out how to ensure the selected node is visible.
|
|
|
|
|
 Okay. I got my answer from a respondent on MSDN. Since I'm in the process of learning the language, syntax, and nuances of Visual C# this is the kind of answer struggling people like me hope to receive from FORUMS like this. There is no way I would have known to do this or "Write It" without guidance.
Quote: Hi Hawk73ku,
According to your description, you'd like to find the specified treenode from the TreeView.
I wrote a sample for you, Here are my steps.
Step1: create a form with a textbox, a button and a treeview.
Step2: set the button click event handler like this.
List<treenode> tnlist = new List<treenode>();//collect the result nodes
int count = -1;//used to record the index of the selectnode
private void button1_Click(object sender, EventArgs e)
{
this.treeView1.Focus();
tnlist.Clear();
this.getallTreeNode(this.treeView1.Nodes, tnlist);
if (tnlist != null && tnlist.Count > 0)
{
count++;
if (count >= tnlist.Count)
{
count = 0;
}
this.treeView1.SelectedNode = tnlist[count];
}
}
private void getallTreeNode(TreeNodeCollection nodes, List<treenode> ltn)
{
foreach (TreeNode tn in nodes)
{
if (tn.Text.ToLower().Contains(this.textBox1.Text.ToLower()))
{
ltn.Add(tn);
}
if (tn.Nodes.Count > 0)
getallTreeNode(tn.Nodes, ltn);
}
}
the getallTreeNode method in my code is used to collect the result treenodes to a list.
Results:
#TreeNode Class
http://msdn.microsoft.com/en-us/library/system.windows.forms.treenode(v=vs.110).aspx
If you have any other concern regarding this issue, please feel free to let me know.
Best regards,
Youjun Tang
|
|
|
|
|
Unfortunately you did not make it clear that you did not know the fundamentals of writing a WinForms application. Had you done so you would have received somewhat different responses. Although these forums are designed to help people with specific questions (see http://www.codeproject.com/Messages/3137519/Forum-Guidelines-PLEASE-READ.aspx[^]), rather than teach them how to program. If you want to learn from the beginning then there are many websites that offer beginners' tutorials, including here at CodeProject; but you are expected to go and find them for yourself.
|
|
|
|
|
Pardon me. Had I known English wasn't understood here I would have made it painstakingly clear but thought my first sentence, "Quote: New to VS C# and inherited a partially developed C# Winform project. Need some guidance. said it all. Also I didn't see anywhere that you don't take kindly to folks learning. I'll make a note of that. But if my opening statement didn't work for you I would have thought an intelligent being such as yourself would have surmised my skill level based on the question. (go figure)
It's very presumptuous of you to think I haven't gone through numerous tutorials and articles on the topic and while I've learned how to build the tree from a SQL source and update it, I did not find anything addressing my question and is why I came here hoping for some guidance. I'm so sorry I did that. I'll think twice about asking another.
Have a good day.
Thom
|
|
|
|
|
Member 11059799 wrote: It's very presumptuous of you to think I presumed nothing, but I can only base my responses on the information you provide. If it's not clear then I ask for clarification, which I did in several responses. If you can't understand my questions then you can do the same. I'm sorry that I could not provide all the information you wanted, but I did (I thought) make it clear on my part that I did not fully understand what you were asking for. And I'm sorry that you seem to think that you are not getting the value for money that is your due, but we do this in our own time and at no cost to you.
|
|
|
|
|
Member 11059799 wrote: If yes how is it done in VS C#? You'll have to WRITE it.
And no, there's very little chance that anyone has done "exactly" what you need, so you search for an example that comes close and start there. Start here[^]
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Well that was no help at all. You think I didn't search for something close? I stepped through every one of those articles with tags VS, C#, and SQL. Not only is there nothing close but nothing near the planet and there isn't a Tag for Winforms.
The project Social.Club might be useful but I can't get it to load and build per the instructions. Perhaps because I have VS 2013 and not VS 2010. Not sure. In any event it doesn't look like it contains an example of user text input to scroll the Tree display.
Regards,
Thom
|
|
|
|
|
Member 11059799 wrote: Not only is there nothing close but nothing near the planet ..there's quite some examples out there on searching, also including WinForm-treeviews. Like I already said, we don't have examples on each scenario. Filtering would be harder to implement than searching; searching a single item and highlighting it would be a lot easier to start with.
- Nodes.Find[^]
- Looping all nodes yourself (recursively!) and checking it (will be harder if the tree lazyloads, and should ideally be done on the datasource, not the tree itself)
Member 11059799 wrote: In any event it doesn't look like it contains an example of user text input to
scroll the Tree display. "Finding" an item in a tree requires a textbox for a search-term, and invoking the Find method. Highlighting that node should bring it into view.
--edit;
Simplest example I could come up with is given below. Do mind the difference between a node-key and its caption. Keynames should be unique, captions don't have to be. Anyting with more flexibility requires more coding.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
static class Program
{
static void Main()
{
using (var f = new Form())
{
var tb = new TextBox() { Dock = DockStyle.Top };
var tv = new TreeView() { Dock = DockStyle.Fill };
f.Controls.AddRange(new Control[] { tv, tb });
tv.Nodes.Add("one", "one").Nodes.Add("two", "two");
tv.Nodes.Add("three", "tree").Nodes.Add("nine", "nine");
tv.Nodes.Add("tree", "three").Nodes.Add("oak", "oak");
tb.KeyDown += (o, a) =>
{
a.Handled = a.KeyCode == Keys.Return;
if (a.Handled)
{
TreeNode[] foundNodes = tv.Nodes.Find(tb.Text, true);
if (foundNodes.Length > 0)
{
tv.SelectedNode = foundNodes[0];
tv.Focus();
}
}
};
f.ShowDialog();
}
}
}
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
modified 8-Sep-14 14:54pm.
|
|
|
|
|