|
Please modify your post - you've provided what looks like real data in there, and this will probably upset the people who are paying you for this system.
More importantly though - why are you saving the controls out? Surely you only need to save the underlying data - aren't the controls static?
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
Oh, sorry. I am sorry about the real data.
Coming to your question about saving the controls, its my project requiremnt to save the controls also.
Regards ,
Veerendra
|
|
|
|
|
potruveeru wrote: Coming to your question about saving the controls, its my project requiremnt to save the controls also.
Are you sure? This seems to be a very odd request. The only reason I could think to do this is because the users are designing the form; is this really the case?
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
I'm curious. Did you feel the need to downvote me because I questioned your requirement? I asked for clarification because the requirement seemed odd, and I wouldn't have wanted to give you advice solving something that didn't need solving. If you think there was a problem with my question, then comment on the question; feel free to downvote it if you want, but please explain why you think it needed the low vote.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
Hello all,
I did a quick search and found my case as unique. I hope I didn't miss something.
I have a .net windows desktop program just like any other. The task is to port it to Mac so intuitively I chose Silverlight 3 utilizing the new Out-of-Browser feature to bring the software offline. I knew I'd face some issues but here are three issues that I need advice about and would greatly appreciate your responses.
1- The software must uniquely generate a code to identify the machine -the license is per machine-. On windows we got the HDD serial number using windows management objects. What's the alternative on Mac? random Guid is obviously not an option.
2- The program uses MS Access file for Data storage. The driver are installed by default on windows. Can we port this Access database and the data access drivers to Mac in the Isolated storage somehow? Of course the alternative is to use Isolated Storage and serialize the data.. I just wanted to maintain consistency between windows and Mac versions.
3- Printing is not available in Silverlight 3. I know SL 3 doesn't support printing yet, but if you have a workaround I'd appreciate it.
Thanks!
Regards
|
|
|
|
|
We are currently beta testing a Silverlight 3 application, and we decided not to use OOB because of all the disadvantages that are currently present. The app is always online and after login, it always launches into a popup window without all the toolbars and such - basically the same thing.
I'll go in reverse order:
#3 - the way we do this is to open a new browser window linked to an auto-generated PDF/XPS file. This obviously wouldn't work if you needed your application to run offline, but otherwise it works pretty well - the user gets a "print preview" right away and they can print from there.
#2 - You can use an embedded database that has been ported to Silverlight, such as: http://blogs.msdn.com/dachou/archive/2009/07/11/embedded-database-engine-for-silverlight-applications.aspx[^]
or port an existing open source .NET database engine. There was one I ran into a while ago, don't remember the name, but it used the standard DBase file format.
I don't think there is any way to retain support for your access database locally. If you don't mind going over the internet for data, you could use SQL or whatever on the backend and communicate query results with web services.
#1 - You are on your own for this one...I'm not sure to be honest. But I will say that licenses that tie themselves to a particular hardware configuration drive me nuts - what happens if my HDD dies? What happens if you guys go out of business and my HDD dies, and then I can't even use the license I still own!
---
It is my honest opinion that if you are going the Silverlight route, you should re-think the architecture of your application. I have no idea what your application does, but GENERALLY speaking, anything that needs a database and licensing is better off being a connected application. Licensing can be enforced by the server (i.e. only one connection with a particular license key is allowed) so you don't have any hardware-binding issues, and the database would obviously be centralized in that scenario. The printing issues are largely taken care of with PDF/XPS exporting from the server.
|
|
|
|
|
|
#3 - my solution requires that the SERVER creates the printing file...so, if you application is www.awesome-app.com, your application would send the data that needs to be printed to the server, the server responds with a unique print-id, and then your open a new browswer window to www.awesome-app.com/print.ashx?print-id=12345. The response is the PDF/HTML/XPS/whatever file that the user prints.
In out-of-browser mode with no online connectivity, the only thing you can do is open a "Save As..." dialog and save the file to the users computer - the user would have to find it and open it after.
There really is no good way to handle offline printing right now.
#2 - if that's the case, then that's probably the way to go.
---
This is a bit off topic...but here is my take on licensing:
Yes, licensing is a real pain...it's always a compromise between pain-in-the-ass-ness and "trust". In your case, the user has to go online to get the application anyway...just have them enter their license key before the application lets them do the offline install. It is my belief that you should protect your application up to the point where someone has to obtain a cracked version to use it without purchasing it. Anything more is a waste of time, because your application WILL be cracked if it is worth cracking. Silverlight applications are especially easy to crack if they work offline. Anything less is bad too, because a lot of users, even business users, will just re-use a "legal" cd-key if they can, because for some reason that doesn't seem as "bad" as actually cracking a program.
Our applications verify their licenses every 30 days. While the application is running, a background thread tries to contact our server and update the machine ID that it is installed on. If it can't contact our licensing server within 30 days, the user gets a 15 day warning. If it still hasn't checked its license, the application gets locked out until it can.
If a new machine ID checks a license registration, the old machine ID gets added to the uninstall list. If the app is run on the old machine, the license verification check fails and the user gets an error message that the license was re-assigned to another machine.
This takes care of 95% of our license re-allocation problems. The only problem is if they want to move their license BACK to the old machine...in which case they can call us Also, if our domain is no longer registered to us, the licensing system shuts off, so their apps still work if we go under :P That's just a little customer confidence booster we added because we picked up a lot of clients that were converting from systems that went out of business.
Our Silverlight applications are all licensed concurrently, so no per-machine license issues there. If connectivity is a problem or concern, they can install the web server internally.
It is a brutally simple implementation that took one day to write. It can be cracked in about an hour by someone who knows what they are doing. But the client would have to conciously obtain a crack and put it on, which is really the main deterrent, and the best one can really hope for.
|
|
|
|
|
Hi,
I am using WPF DatePicker from the toolKit to select a date from the calendar. I wish to change the style and template of the CalendarItem. How to do this?
Note : i am able to change the style and template of the calendar when a calendar alone is used. But in the case calendar from the date picker i dont have idea how to make a style and template for calendarItem.
Please help me...
Jits
|
|
|
|
|
DatePicker has a CalendarStyle property you can set.
Here's the default Calendar and CalendarItem styles to get you started
(note you can extract styles of existing controls easily if you have Blend)...
<Style x:Key="CalendarStyle1" TargetType="{x:Type wpftk:Calendar}">
<Setter Property="Foreground" Value="#FF333333"/>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFE4EAF0" Offset="0"/>
<GradientStop Color="#FFECF0F4" Offset="0.16"/>
<GradientStop Color="#FFFCFCFD" Offset="0.16"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="BorderBrush">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFA3AEB9" Offset="0"/>
<GradientStop Color="#FF8399A9" Offset="0.375"/>
<GradientStop Color="#FF718597" Offset="0.375"/>
<GradientStop Color="#FF617584" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type wpftk:Calendar}">
<StackPanel x:Name="PART_Root" HorizontalAlignment="Center">
<wpftk:CalendarItem x:Name="PART_CalendarItem" Style="{DynamicResource CalendarItemStyle1}" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="CalendarItemStyle1" TargetType="{x:Type wpftk:CalendarItem}">
<Setter Property="Margin" Value="0,3"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type wpftk:CalendarItem}">
<ControlTemplate.Resources>
<DataTemplate x:Key="DayTitleTemplate">
<TextBlock HorizontalAlignment="Center" Margin="0,6" VerticalAlignment="Center" FontFamily="Verdana" FontSize="9.5" FontWeight="Bold" Foreground="#FF333333" Text="{Binding}"/>
</DataTemplate>
</ControlTemplate.Resources>
<Grid x:Name="PART_Root">
<Grid.Resources>
<SolidColorBrush x:Key="DisabledColor" Color="#A5FFFFFF"/>
</Grid.Resources>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="PART_DisabledVisual" Storyboard.TargetProperty="Opacity" To="1"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="1">
<Border BorderBrush="White" BorderThickness="2" CornerRadius="1">
<Grid>
<Grid.Resources>
<ControlTemplate x:Key="HeaderButtonTemplate" TargetType="{x:Type Button}">
<Grid Cursor="Hand">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Color" To="#FF73A9D8"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="buttonContent" Storyboard.TargetProperty="Opacity" To="0.5"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<ContentPresenter x:Name="buttonContent" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="1,4,1,9" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" TextElement.Foreground="#FF333333" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}"/>
</Grid>
</ControlTemplate>
<ControlTemplate x:Key="NextButtonTemplate" TargetType="{x:Type Button}">
<Grid Cursor="Hand">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Color" To="#FF73A9D8"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Opacity" To="0.5"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="#11E5EBF1" Stretch="Fill" Opacity="1"/>
<Grid>
<Path Fill="#FF333333" Stretch="Fill" HorizontalAlignment="Right" Margin="0,-6,14,0" VerticalAlignment="Center" Width="6" Height="10" Data="M282.875,231.875L282.875,240.375 288.625,236z"/>
</Grid>
</Grid>
</ControlTemplate>
<ControlTemplate x:Key="PreviousButtonTemplate" TargetType="{x:Type Button}">
<Grid Cursor="Hand">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Color" To="#FF73A9D8"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Opacity" To="0.5"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="#11E5EBF1" Stretch="Fill" Opacity="1"/>
<Grid>
<Path Fill="#FF333333" Stretch="Fill" HorizontalAlignment="Left" Margin="14,-6,0,0" VerticalAlignment="Center" Width="6" Height="10" Data="M288.75,232.25L288.75,240.625 283,236.625z"/>
</Grid>
</Grid>
</ControlTemplate>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button x:Name="PART_PreviousButton" HorizontalAlignment="Left" Width="28" Height="20" Focusable="False" Grid.Column="0" Grid.Row="0">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid Cursor="Hand">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Color" To="#FF73A9D8"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Opacity" To="0.5"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="#11E5EBF1" Stretch="Fill" Opacity="1"/>
<Grid>
<Path Fill="#FF333333" Stretch="Fill" HorizontalAlignment="Left" Margin="14,-6,0,0" VerticalAlignment="Center" Width="6" Height="10" Data="M288.75,232.25L288.75,240.625 283,236.625z"/>
</Grid>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
<Button x:Name="PART_HeaderButton" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="10.5" FontWeight="Bold" Focusable="False" Grid.Column="1" Grid.Row="0">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid Cursor="Hand">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Color" To="#FF73A9D8"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="buttonContent" Storyboard.TargetProperty="Opacity" To="0.5"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<ContentPresenter x:Name="buttonContent" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="1,4,1,9" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" TextElement.Foreground="#FF333333" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}"/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
<Button x:Name="PART_NextButton" HorizontalAlignment="Right" Width="28" Height="20" Focusable="False" Grid.Column="2" Grid.Row="0">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid Cursor="Hand">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Color" To="#FF73A9D8"/>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="00:00:00" Storyboard.TargetName="TextColor" Storyboard.TargetProperty="Opacity" To="0.5"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle Fill="#11E5EBF1" Stretch="Fill" Opacity="1"/>
<Grid>
<Path Fill="#FF333333" Stretch="Fill" HorizontalAlignment="Right" Margin="0,-6,14,0" VerticalAlignment="Center" Width="6" Height="10" Data="M282.875,231.875L282.875,240.375 288.625,236z"/>
</Grid>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
<Grid x:Name="PART_MonthView" Margin="6,-1,6,6" Visibility="Visible" Grid.ColumnSpan="3" Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
</Grid>
<Grid x:Name="PART_YearView" Margin="6,-3,7,6" Visibility="Hidden" Grid.ColumnSpan="3" Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
</Grid>
</Grid>
</Border>
</Border>
<Rectangle x:Name="PART_DisabledVisual" Fill="#A5FFFFFF" Stretch="Fill" Stroke="#A5FFFFFF" StrokeThickness="1" RadiusX="2" RadiusY="2" Opacity="0" Visibility="Collapsed"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Visibility" TargetName="PART_DisabledVisual" Value="Visible"/>
</Trigger>
<DataTrigger Binding="{Binding DisplayMode, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type wpftk:Calendar}}}" Value="Year">
<Setter Property="Visibility" TargetName="PART_MonthView" Value="Hidden"/>
<Setter Property="Visibility" TargetName="PART_YearView" Value="Visible"/>
</DataTrigger>
<DataTrigger Binding="{Binding DisplayMode, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type wpftk:Calendar}}}" Value="Decade">
<Setter Property="Visibility" TargetName="PART_MonthView" Value="Hidden"/>
<Setter Property="Visibility" TargetName="PART_YearView" Value="Visible"/>
</DataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hi sir,
Thanks for that great help. but can you please tell me how to change the styles for dates shown in the calendar . In other words if i want to change the font size of the dates displayed in a month view what should i do? i think it is "CalendarDayButton" style. how to use this in our application?
My actual purpose is to change the style of the available calendar of the wpf with additional functionalities. Is that possible?
Thanks
Jithesh
|
|
|
|
|
Member 4070815 wrote: i think it is "CalendarDayButton" style
Then set CalendarDayButtonStyle and see what happens. For example,
red dates with a font size 10:
<wpftk:Calendar >
<wpftk:Calendar.CalendarDayButtonStyle>
<Style TargetType="Button">
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<TextBlock Foreground="Red" FontSize="10" Text="{TemplateBinding Content}" Margin="5" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</wpftk:Calendar.CalendarDayButtonStyle>
</wpftk:Calendar>
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hi,
Hey Mark thanks for the reply.(But I couldnt do that. may be the way i done is wrong note: the way i done is explained last please have a look)
Hi all,
Is there any way to find the number of week corresponding to the row in the month view. I mean the when the month view is displayed can we calculate number of week for a corresponding row ?forexample : In 2009 calender the 1 row of february month is the 6th week of the year. Is there any way to do this??
Hey Mark please have a look at this too :
The way i done is given below.
step 1: just added a datepicker with a "CalenderStyle" metioned.
sTEP2 : Created a Calendar style with a key and that key is refered in the Date picker. In this Calendar style i added in a stack panel the style for CalendarItem .
Step 3: Created the style and template for CalendarItem .
Now tell me where to use the code you given to me.
Thanks
Jits
|
|
|
|
|
Hi,
I am working on silverlight aplication. In this I used a WCF service. In this service I have a method like this:
public Array AdRotatorFilesList()
By using this service I need to get the Array value in to the array in my silverlight application. For this I wrote code like this:
Service1Client objt1 = new Service1Client();
objt1.FilesListAsync();
objt1.FilesListCompleted += new EventHandler<FilesListCompletedEventArgs>(DisplayResults);
void DisplayResults(object sender, FilesListCompletedEventArgs e)
{
string[] img= e.Result;
}
For this I am getting an error like this:
cannot implicitly convert System.collection.objectmodel. observablecollection<object> to string[]
If have any idea to get the return value of the array from the service to silver light application, please reply me.
Thanks in advance.
|
|
|
|
|
The error is telling you that you are returning an observable collection of objects to the client. If you look at your declaration, you can see that you have declared it as an Array - which is basically a container for objects. Where do you think the string is in this?
I assume you want to return a list of strings. If so, change your declaration to
public List<string> AdRotatorFilesList() and populate it with the relevant strings.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
Hi,
I am working on a silver light projrct.In this I need to upload an image and save it in a folder in the server(i.e., in a folder in the application). I want this funtion to be done on button click. So I cannot use file upload control. For getting the images I used open dialog. Now I have to sae the image.
If anyone have any idea to save the image to folder please reply me.
Thanks in advance.
|
|
|
|
|
If you are selecting a file by using OpenFileDialog then you will get the stream, right?
So, you can do http-post this stream to your web service.
Please check this example:
Silverlight File Upload[^]
Note: It's not possible to do without using any web service.
Thanks and Regards,
Michael Sync ( Blog: http://michaelsync.net)
Microsoft MVP (Silverlight), WPF/Silverlight Insiders
|
|
|
|
|
You'll need to wire in a WCF service at the server side. The service would take the file information and byte array, then store it locally.
In your Silverlight application, you'll reference the service, then take your image data and send it.
To get to the image data, most likely you'll send it into a WriteableBitmap and then parse the Pixels array ... you can either format it on the Silverlight side and send it down, or send it raw and handle formatting on the server. Perhaps simple compression in the client, then uncompress and format into JPEG/PNG/etc on the server would be fine.
|
|
|
|
|
Hello all,
I have a small bit of silverlight code that pulls some data down from a silverlight-enabled web service and binds to it. I'm currently doing the bulk of the work in the constructor. Once the data is down, I bind to it in a couple of places and it is also accessible via a property on the code behind. However, I also have some controls that need to bind to this property in order to provide a list of values on screen. Is there a way to do this with the XAML binding syntax, or do I need to do this in the code behind?
Thanks,
Will
|
|
|
|
|
What about this?
For example:
<UserControl ...
xmlns:model=".........."
>
<UserControl.DataContext>
<model:YourClass/>
<UserControl.DataContext>
<ListBox ItemSource="{Binding YourPropertyOfYourClass}" />
</UserControl>
Thanks and Regards,
Michael Sync ( Blog: http://michaelsync.net)
Microsoft MVP (Silverlight), WPF/Silverlight Insiders
|
|
|
|
|
Sorry about the slow response, it took longer to recover from vacation than I thought (I had to wait until I was off to have time to start learning silverlight).
Your suggestion worked, so that means I don't understand the whole DataContext thing like I thought I did. I thought the control got it from whatever control contained it, but that is apparently not the case. Strange.
Anyway, thanks for the help, I really appreciate it.
|
|
|
|
|
Ugh. I told you wrong. I forgot I had put some hackish stuff in the code behind that set the ItemsSource.
Here's roughly what I have. It's buried down in one cell of a datagrid that is in a cell of another datagrid on the page.
<ComboBox x:Name="cboTextColor" SelectedItem="{Binding Color}" Grid.Row="2" Grid.Column="1">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding Color}" Width="25"/>
<TextBlock Text="{Binding ColorName}"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
There is a regular .NET property on the code behind page called ProductColors. It is currently an ObservableCollection<colorentry> (where ColorEntry has an id, a color code, and a description). It seems like I should be able to bind to it by doing something like:
<ComboBox ItemsSource={Binding ProductColors}" />
However, even though the list has two items in it, nothing shows in the drop down.
Does this need to be a dependency property or something for binding to work?
|
|
|
|
|
gantww wrote: It seems like I should be able to bind to it by doing something like:
<combobox itemssource="{Binding" productcolors}"="">
That depends on what "ProductColors" is. Assuming it's a collection of
ColorEntry objects, you still need a data context set somewhere so the system
knows where to find the ProductColors object to bind to.
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hi
I'm creating a program to manage a competition which has several rounds. I have a class PreliminaryCompetition which contains a list of Teams and a list of Rounds, each Round containing a Result for each Team. I'd like to display the results of all rounds in a ListView control which has two columns to display team name and school name, followed by N columns to display results from N rounds. Is it possible to do this automagically with WPF binding? What do I have to implement to achieve this? (apologies - I'm a WPF noob)
Thanks
Jack
|
|
|
|
|
...someone wrote a Flash-based Silverlight engine. I'm sure that's not what Microsoft wants, but it would be instant ubiquity for Silverlight.
Flash has that fancy new native C converter, so I don't see performance being a huuuge issue. Considering MoonLight is open source, a ton of ground work has already been laid down.
Anybody up for a challenge? haha
|
|
|
|
|