2014-02-17 3 views
1

내 Windows Phone 7 응용 프로그램에서 메시지 본문에 응용 프로그램의 이전 페이지 데이터가 들어 있어야하는 전자 메일을 보내려고합니다. 이전에는 다음과 같은 전자 메일 기능을 통합했습니다.Windows Phone 7 응용 프로그램에서 전자 메일 보내기

private void Image_Email(object sender, RoutedEventArgs e) 
{ 
    EmailComposeTask emailComposeTask = new EmailComposeTask(); 

    emailComposeTask.Subject = "message subject"; 
    emailComposeTask.Body = "message body"; 
    emailComposeTask.To = "[email protected]"; 
    emailComposeTask.Cc = "[email protected]"; 
    emailComposeTask.Bcc = "[email protected]"; 
    emailComposeTask.Show(); 
} 

하지만 에뮬레이터에서이 기능을 테스트 할 수 없었습니다. 이제 body 부분에서 이전 페이지의 데이터를 원합니다. 그러면 어떻게 할 수 있을까요?

코드 업데이트 : 지금은 메시지 본문에 기록 할 것을

if (this.NavigationContext.QueryString.ContainsKey("Date_Start")) 
{ 
    //if it is available, get parameter value 
    date = NavigationContext.QueryString["Date_Start"]; 
    datee.Text = date; 
} 

if (this.NavigationContext.QueryString.ContainsKey("News_Title")) 
{ 
    //if it is available, get parameter value 
    ntitle = NavigationContext.QueryString["News_Title"]; 
    title.Text = ntitle; 
} 

if (this.NavigationContext.QueryString.ContainsKey("News_Description")) 
{ 
    ndes = NavigationContext.QueryString["News_Description"]; 
    description.Text = ndes; 
} 

? 장치가 없으므로 테스트 할 수 없습니다. 내가이 같은 값을 전달할 수 있습니다 :

emailComposeTask.Body = "title, ndes, date"; 

답변

1

나는 코드가 올바른 생각합니다. 이전 페이지에서 본문을 전달하려면 페이지 탐색시 전달해야합니다. emailComposeTask.Body = yourPassedValue를 설정하십시오. 이 같은 :

당신은 다음과 같은 메시지의 바디 라인을 편집해야
var date; 
var title; 
var ndes; 

emailComposeTask.Body = title + "," + ndes + "," + date; 
+0

내 업데이트 된 코드를 참조하십시오. 이것을 쓰는 방법입니까? – bhaku

+0

내 업데이트 된 코드를 참조하십시오. –

+0

안녕하세요, @bhaku, 코드를 읽으셨습니까? 어떤 문제가 있습니까? –

1

: 당신이 올바른 이메일 계정이 설정되어 있지 않기 때문에

emailComposeTask.Body = title+" "+ ndes+" "+ date; 
1

당신은 에뮬레이터에서 메일을 보내는 테스트 할 수 없습니다. 에뮬레이터에서 설정할 수도 없습니다.

Body 속성은 문자열이므로 사용자가 원하는 모든 것을 넣을 수 있습니다. 단지 정확하게 포함 된 문자열을 생성합니다 다음 코드를 사용하여

:

emailComposeTask.Body = "title, ndes, date"; 

그래서 결과 메일을 텍스트로 "제목, NDES, 날짜"를 포함하는 몸이있을 것이다. 제목을 로컬 변수 title의 값으로 바꾸려면 다음 구문을 사용해야합니다.

emailComposeTask.Body = string.Format("{0}, {1}, {2}", title, nodes, date); 
관련 문제