I have a task in WP8
I need to take a screenshot and send it to some server when a user clicks (button or so?) On WP8
I am sending it successfully. But the problem is that sometimes it does not send the entire screen to my server.
Here is my code:
private void LayoutRoot_MouseLeave(object sender, MouseEventArgs e) { TakeScreenShort(); } private void TakeScreenShort() { WriteableBitmap bmpCurrentScreenImage = new WriteableBitmap((int)this.ActualWidth, (int)this.ActualHeight); bmpCurrentScreenImage.Render(LayoutRoot, new MatrixTransform()); bmpCurrentScreenImage.Invalidate(); byte[] bytearray = null; using (MemoryStream ms = new MemoryStream()) { WriteableBitmap wbitmp = new WriteableBitmap(bmpCurrentScreenImage); wbitmp.SaveJpeg(ms, wbitmp.PixelWidth, wbitmp.PixelHeight, 0, 100); ms.Seek(100, SeekOrigin.Current); bytearray = ms.GetBuffer(); } string str = Convert.ToBase64String(bytearray); string json = JsonConvert.SerializeObject(new { id = 11544714, img = str, width = bmpCurrentScreenImage.PixelWidth, height = bmpCurrentScreenImage.PixelHeight, }); string url = "http://178.188.9.96/imageservice/image.php"; WebClient webClient = new WebClient(); webClient.Headers["Content-Type"] = "application/json"; webClient.Encoding = Encoding.UTF8; webClient.UploadStringCompleted += new UploadStringCompletedEventHandler(proxy_UploadStringCompleted); webClient.UploadStringAsync(new Uri(url), "POST", json, null); } private void proxy_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e) { var response = e.Result; var jsonData = JsonConvert.DeserializeObject<RootObject>(response); }
Sometimes it accepts full-screen mode, and sometimes it does not accept the whole screen.
c # windows-phone-8
Srirama
source share