Hello,
I'm using the XamWebDialogWindow as a modal popup.
I've got a few teething issues with it.
1) The scrollbars don't appear if the content is "dynamically" resized.
My dialog contains a user control that contains a XamWebGrid and I bind data to it. When the data is bound, the grid becomes bigger and doesn't fit anymore. The dialog doesn't show the scrollbars.
If I "hardcode" the content, the scrollbars appear as expected
2) Dialog not resized to fit content.
I expect the dialog to fit itself to its content. Once again, that happens with "hardcoded" data in the XamWebGrid but not with bound data.
3) (Don't know if it's related) The XamWebGrid in the dialog fits all the width available and makes the dialog take all the available width. I'd like it to fit to data and it doesn't seem to work in that instance (code copy-pasted from other control and it shows the expected behaviour).
Cheers.
Hi bjunk!
If you want to have a scrollbars you can put the content od the XamWebDialogWIndow inside a ScrollViewer:
<igWindow:XamWebDialogWindow Width="200" Height ="200">
If you didn't specify size of the window (Width and Height) - window will be resized to show all content:
<igWindow:XamWebDialogWindow >
<Button Width="300" Height="300" Content="Content"/>
</igWindow:XamWebDialogWindow>
Id dynamically change the size of the XamWebDialogWindow content you can listen to
SizeChanged ebent of the content element.
For example:
XAML:
C#
this
.myBtn.SizeChanged += new SizeChangedEventHandler(MyBtn_SizeChanged);
void MyBtn_SizeChanged(object sender, SizeChangedEventArgs e)
{
myWin.Height += (e.NewSize.Height - e.PreviousSize.Height);
myWin.Width += (e.NewSize.Width - e.PreviousSize.Width);
}
This approach can work with other UI components, uncluding Grid
I hope this can help :-)
Kind Regards!
Mihail
(I'm using another account but I'm the original sender of the post).
1) That's what I've done. My point was: why do I have to do that? It happens automatically if I don't use binding! I don't have to do that for other containers neither!
Isn't it a bug in the DialogWindow?
2) Shouldn't that also happen automatically? The other containers behave that way AFAIK, it's just the DialogWindow that wants to be special.
Isn't it a bug also? Maybe related to the 1st one?
I'd like to know if you can provide some informations.
Is it a bug? Am I doing something wrong?
Can I achieve the behaviour that I'm after?
Hi R4cOOn,
I hope that for tomorrow you will have an answer.
Kind Regards,
Hi,
Tomorrow has gone. Any news?
I attached a sample with DialogWondow and Prism that works properly.
I modified one well known sample with Prism
http://development-guides.silverbaylabs.org/Video/Silverlight-Prism#videolocation_6
I have added also Module ModuleB with XamWebDialogWIndow and have modified SamplePrism silverlight application project. Modified files are attached to my post. Please download the original sample, modify it and start it .
Best Wishes!
Thanks for the reply but that's definitely NOT the issue I was describing in the posts and the files I sent.
What I wants is set up the DialogWindow as a region and dynamically set data to it. So in your example, you'll need to set the Shell as a Grid with a XamWebDialogWindow inside as a region and then stick ModuleB's view inside it.
I couldn't get that part to work because:
1) the XamWebDialog wouldn't resize itself to fit the content
2) hooking up the content's SizeChanged event and changing the size of the XamWebDialogWindow makes it crash.
As I stated before, the issues that I described have NOTHING to do with my use of PRISM but everything to do with dynamically sizing the XamWebDialogWindow.
Did you have a look at the sample that I sent? Does it crash for you as well?