Visual 2008 Report Server - Parameter Attribute adjustments - visual-studio

I've been trying trying to adjust the width of the VS 2008 Report Server user parameter text box at runtime to expand or grow or at least wrap somewhat long text.
I've been looking into manually doing so in the web code for the parameter sections but haven't figured it out yet. Any suggestions?
Its said there are options in the designer view but the size attributes do not directly affect this at runtime. It has a scrollbar but is short and that is and seems inefficient for users who will run these reports.
Heres the XML portion I thought I could manually change.
<ReportParameters>
<ReportParameter Name="ProjectTypeIDs">
<DataType>String</DataType>
<Prompt>Project Type</Prompt>
<ValidValues>
<DataSetReference>
<DataSetName>ProjectTypes</DataSetName>
<ValueField>ProjectTypeID</ValueField>
<LabelField>ProjectTypeName</LabelField>
</DataSetReference>
</ValidValues>
<MultiValue>true</MultiValue>
</ReportParameter>
Thanks ahead of time!

Related

VB6 Form will not resize when I run

I have to make some modifications to a VB6.0 project that I haven't touched in years so my memory is getting a little old.
I have a form and then I make the form bigger in the IDE. When I run the program, the size increase does not show up although it looks perfectly fine in the IDE.
What could be causing this?
If I change other stuff on the same form, the changes show up when I run. The only thing this is happening with is the size.
This form is a lot smaller that the main window so there is space to expand into.
Other forms in my project do not have this same behavior.
What else could I check for?
Look for something that sets the height and width in code at runtime. Use the IDE's search specifically to look for ".Height" and ".Width" and ".Move".
I think that an easier solution might be to set the form's height and width in the form_load event, so it initially becomes as big as desired.

How to speed up dynamically adding user controls in wp7

I have a page in my WP7 app that I build dynamically. I create and add 60 user controls to a grid and it takes around 5 seconds. I need to find a way of speeding this up.
The process is as follows:
Create user control
Add new grid row definition
Set the value of the control row property
Add the control to the grid.Children collection.
It is step 4 that is taking the time. I'm guessing that each time I do this the visual tree is getting re-built.
Is there any way of telling the grid to only re-build the visual tree after I have finished updating the children collection?
Or is there another better way of doing this?
UPDATE: The List Picker control from the WP7 Toolkit was causing the problem. When I changed to one I wrote myself the time taken to display the page on a phone reduced from 25 seconds to 1 second.
The/your aim is to try and reduce the number of times you update the visualtree.
A few suggestions:
Try including (some of) the items in the page by default but just change their visibility depending on what you need.
Build the whole grid in code and add it to the page in one go (rather than a line at a time)
Depending on your content, you could try using a ListBox and alternating the template used for each row to get different content displayed.
The technique which will be best for you will depend on what you're actually adding to the UI. You'll need to test to see what is best for you.
If the UI virtualization (i.e. ListBox) helped, the problem must be in your controls. Templating, bindings, converters, using Xaml instead of C# code, unnecessary Xaml constructs (such as element names), overcomplicated visual tree (e.g. unneeded grids) etc. - those are the things that can degrade the performance.
If you suspect incremental visual tree rebuilds (I don't think so), then simply debug MeasureOverride/ArrangeOverride methods.
I guess this article might give you more tips. I described there how we optimized a similarly complex control - MonthCalendar with 126 sub-controls. Control load time decreased approx. 5x!

Change the size of a control in lightswitch beta

I'm playing around with my first lightswitch application and am trying to change the size of a list control. Does anyone know how to do that? I've tried:
this.FindControl("PersonList").SetProperty("Height", 200);
but get told the height property doesn't exist. I've had a quick look thorugh the lightswitch namespaces in the object browser but so far haven't found anything useful.
That code looks like it should work (just change 200 to 200.0 - Height is a double). I've just verified almost identical code on my machine.
Here's a few things you can try:
Ensure you're using the right name for the control - Select the control in Visual studio and check the name in the properties window. Lightswitch creates lots of name variations, and it's easy to miss that the actual name is "PersonList2" for example.
Ensure that you've selected "Pixels" for height control in the properties window for the control
Once you can access the Height property it won't actually do anything until you set the control alignment to "Top". If it remains on "Stretch" it will ignore anything written to the Height property.
Let me know if you still have trouble getting this to work.

How can I customize my Visual Studio panels to take less screenspace?

I'm using VS 2008 and I notice a lot of wasted screenspace, such as the Error List upgrade I propose below. Is there any way to change the way panels are rendered to make them smaller? Or maybe some addon to VS that does what it does but with compacted panels.
Current Error List - Only 2 errors visible
Future - 6 errors visible in same space
I don't know how to customize panels the way you're asking, but I've found my own way of dealing with panels I don't need all the time.
I keep panels like errors, search results or output set to Auto-Hide. That way they can take up a pretty decent amount of space when I want to see the lists, but they're not visible at all the rest of the time. Works well for me. When I'm not using one of those panels the only windows that are visible are the solution explorer and the code editor.
If you can afford more monitors, get them. You won't have to worry about auto-hide and you'll have enough room for it all.

VB6 silently deleting huge chunks of control data from forms

My project has maybe 130 controls (total of all labels, textboxes, etc.) in an SSTab (4 tabs). The project loads fine, it runs fine, I don't see a single error or warning at any point, but when I save the form with the SStab on it, the SStab data isn't saved (it is completely gone). Normally the relevant portion of the .frm file looks like this:
Begin TabDlg.SSTab SSTab1
Height = 8895
[1550 more lines of code for all the controls]
Width = 540
End
Begin VB.Menu FileMenu
But lately it's getting cropped to:
Begin TabDlg.SSTab SSTab1
Begin VB.Menu FileMenu
This is very frustrating! In my VB IDE, the frame, sstab, and all the controls are there, editable, running/compiling fine, no error messages at any point, but when you save the file, 1550 lines of precious sstab data just disappears - again, with no warning or error messages. So if you exit and restart the IDE, you get a form load error because 60% of the code is now missing. The log file points to the first error it finds (in this case a Begin TabDlg with no End) - there's no other info in it. (The log file was generated after the code was deleted and saved, so it makes sense that it wouldn't be helpful.)
When I first posted this question, I thought it had to do with the number of controls, because it appeared after I added a control, and in my first few tests, seemed to disappear when that control (or other controls) was deleted. Now I can't seem to get that form to save under any circumstances, even when I delete many controls (bringing the number of controls far below where it was when it was last stable).
I also tried deleting the SStab and moving all the controls to 4 different frames. I successfully did that in the IDE, but when I saved, a huge chunk of the data (starting with a slider control) was missing. So I have no fraking idea what is going on.
The problem is reproducible on two different PCs, so it doesn't appear to be a hardware/corrupt software VB install issue.
Has anyone else run into something like this?
Create a UserControl for each tab. That makes editing MUCH easier. It also allows you to nicely modularize the code, so each tab lives in its own file, and it'll allow you to reuse tabs elsewhere if you want.
Sounds horrible, never heard of anything like that.
Presumably you aren't getting an error log file from VB6 when you load the form into the IDE before it gets corrupted? The log file has the same filename as the form file but with a .log filename extension. For example, if errors occurred when loading Myform.frm, Visual Basic would create a log file named Myform.log. The error messages you might see there are documented in the manual.
Have a look in the Windows Event Log, see whether it records any interesting problems against the VB6 IDE?
Are you using any weird controls? Maybe one of them is somehow corrupting the FRM or FRX. FRM files are just text as you obviously know & the format is documented in the VB6 manual. Can you see any corruption in the FRM in a text editor? If you remove any properties defined in the FRX, does it still fail.
I think I would try creating a new project and a new form, and then use the IDE to copy and paste all the control definitions into it - no code. Play with the new form, see whether it has the same problem. Maybe you can recreate the form this way without the problem. If the new form does have the problem, do the same thing but only take half the controls. Maybe you can find a problem control by "binary search".
I get the same problem when attempting to save a form when the .FRM is writable but the .FRX is read-only
Not sure if this is the issue, but on a VB6 form, there is a limit to 255 (or is it 256) named controls. Perhaps you are running into that?
One way around that limitation is to use control arrays. For example, if you had 10 labels, instead of label1, label2, label3, etc, you could do label(0) through label(9), and use up only one named control.
The other thing worth mentioning about the SSTAB is the way it shows/hides controls. While it may appear that the controls are on separate tabs, what is really happening is that the controls are getting moved waaaayyyyy to the left (and consequently out of view). Perhaps with so many components, the SSTAB is choking on this in the IDE as it tries to render the controls in design view?
Again, not sure if this is the issue, but I know these two tidbits are relatively unknown.
So the SAVE function is not working.
I suspect one of the components you are placing on the tab strip is the culprit.
So ..
1) Take an inventory of each and every kind of component you are placing on the form
2) eliminate one (kind), SAVE
3) Did it SAVE?
-> Yes = that was the problematic control
-> No = return to step 2, but pick another kind
Of course, its important to remove all controls of a certain kind in step #2 (for example, ALL labels, or ALL textboxes, etc).
I have never heard of this happening however.
You are not alone! I've seen this problem. . .in fact I'm dealing it right now, which is what brought me to this site.
I've been working with VB since '94 (VB3) and I first saw this problem about 5 or 6 years ago, while using VB6. My solution then, was not unlike some of the suggestions that you have recieved from the good folks who've responded above: throw out the existing file and rebuild the form in a new file. I did that back and the affected form has worked ever since.
My current problem is appearing in another, much newer form, and the replace/rebuild option (performed about a month ago) only worked for about three weeks. Now the problem is back and each new iteration of the file gets corrupted very quickly. Following the reply above regarding the total number of allowable controls, I'm looking into just how many controls I have. . .and, as it happens, I was in the process of consolidating the primary the buttons and menus into control arrays, simply because it was going to streamline their management.
I can also confirm your observations about moving the project to a second PC. . . I've done that too, and problem persists. Moreover, I can add that I have moved the project from one shared storage system to another to no avail. (The original storage location was on a drive mounted to a Win-tel system and the new location is on a UNIX-based NAS!)
Just rebuilt the file again and checked: Controls.Count = 62, so I am no where near the 255 control limit mentioned previously. This is indeed strange! (Not to mention furstrating!)

Resources