Loading

delegate Callback委托

    public class RK_URLReqeust
    {

public delegate void Callback(string response);

Callback callback;

public string Response { get; private set; }

        public RK_URLReqeust(string url, Callback callback)
        {
            // Initialize members
            this.url = url;
            this.callback = callback;
            //State = URLRequestState.Idle;
        }

            Response = streamReader.ReadToEnd();//from server or from xml or from json get data

            // Call the response callback
            if (callback != null)
            {
                callback(Response);
            }

  }

调用

        private void OnClickGet(object sender, RoutedEventArgs e)
        {
            RK_URLReqeust rk = new RK_URLReqeust("http://www.baidu.com", new RK_URLReqeust.Callback(UploadPic_CallBack));
        }
        private void UploadPic_CallBack(string response)
        {
            Dispatcher.BeginInvoke(() =>
            {
                MessageBox.Show(response);
            });
        }

posted @ 2012-11-23 10:24  androllen  阅读(418)  评论(0)    收藏  举报