public async Task SetContent(string Content, ReaderStartMode mode = ReaderStartMode.First, int startLength = 0) { _isSizeChangeLoaded = false; _content = Content; LoadingStatusChanged?.Invoke(this, LoadingStatus.Loading); await CreateContent(); _startTextIndex = startLength; IsCoreSelectedChanged = true; var index = 0; switch (mode) { case ReaderStartMode.First: index = 0; break; case ReaderStartMode.Last: index = Count - 1; break; case ReaderStartMode.Stay: index = Index > Count - 1 ? Count - 1 : Index; break; } if (startLength != 0) { index = AddonOffset(startLength); } Index = index; GoToIndex(Index, false); IsCoreSelectedChanged = false; LoadingStatusChanged?.Invoke(this, LoadingStatus.Completed); }
public async void SetContent(string Content, ReaderStartMode mode = ReaderStartMode.First, int startLength = 0) { _isSizeChangeLoaded = false; _content = Content; LoadingStatusChanged?.Invoke(this, LoadingStatus.Loading); await CreateContent(); _startTextIndex = startLength; IsCoreSelectedChanged = true; var index = 0; switch (mode) { case ReaderStartMode.First: index = 0; break; case ReaderStartMode.Last: index = Count - 1; break; case ReaderStartMode.Stay: index = Index > Count - 1 ? Count - 1 : Index; break; } if (startLength != 0) { int childrenCount = _tempOverflowList.Count; var signNumber = Content.Length / childrenCount; index = Convert.ToInt32(Math.Floor(startLength / (signNumber * 1.0))); index = Convert.ToInt32(Math.Round(index / (_columns * 1.0))); index = index > Count - 1 ? Count - 1 : index; } Index = index; GoToIndex(Index, false); IsCoreSelectedChanged = false; LoadingStatusChanged?.Invoke(this, LoadingStatus.Completed); }
public CustomRequestEventArgs(ReaderStartMode mode, Chapter chapter, int addon = 0) { StartMode = mode; RequestChapter = chapter; AddonLength = addon; }
/// <summary> /// 设置自定义内容 /// </summary> /// <param name="content">文本内容</param> /// <param name="mode">起始位置</param> public void SetCustomContent(string content, ReaderStartMode mode) { _txtView.SetContent(content, mode); }
/// <summary> /// 设置自定义章节详情 /// </summary> /// <param name="detail">章节详情</param> /// <param name="mode">起始位置</param> /// <param name="addonLength">偏移值</param> public void SetCustomContent(ChapterDetail detail, ReaderStartMode mode, int addonLength = 0) { _readerView.SetContent(detail.GetReadContent(), mode, addonLength); }
/// <summary> /// 设置自定义内容 /// </summary> /// <param name="content">文本内容</param> /// <param name="mode">起始位置</param> public async void SetCustomContent(string content, ReaderStartMode mode) { await _readerView.SetContent(content, mode); }